Compare commits

...

6 Commits

  1. 10
      src/components/menuTree/index.vue
  2. 12
      src/i18n/index.js
  3. 2
      src/layouts/footer/index.vue
  4. 1
      src/pages/article/activity.vue
  5. 15
      src/pages/column/index.vue
  6. 4
      src/pages/contactUs/index.vue
  7. 72
      src/pages/deviceIntroBeam/index.vue
  8. 71
      src/pages/deviceIntroLayout/index.vue
  9. 57
      src/pages/deviceIntroLinear/index.vue
  10. 59
      src/pages/estate/event/index.vue
  11. 249
      src/pages/estate/index/index.vue
  12. 63
      src/pages/estate/location/index.vue
  13. 32
      src/pages/estate/orgSetup/index.vue
  14. 31
      src/pages/estate/survey/index.vue
  15. 81
      src/pages/governance/index.vue
  16. 291
      src/pages/home/index.vue
  17. 30
      src/pages/iasf/index.vue
  18. 286
      src/pages/news/index.vue
  19. 28
      src/pages/org/index.vue
  20. 155
      src/pages/overview/index.vue
  21. 70
      src/pages/overviewDevHistory/index.vue
  22. 57
      src/pages/overviewIntro/index.vue
  23. 32
      src/pages/overviewSetup/index.vue
  24. 8
      src/pages/researchTeam/index.vue
  25. 2
      src/pages/speech/index.vue
  26. 2
      src/styles/lib/_reset.scss

@ -84,4 +84,14 @@ export default {
}
}
}
@media (max-width: 640px) {
.nav {
&>.menu-child {
&>.el-menu-item {
font-size: 1rem;
}
}
}
}
</style>

@ -22,7 +22,7 @@ export const messages = {
series: '演讲系列',
all: '全部',
readDetail: '阅读详情',
offline:'线下',
offline: '线下',
more: '更多',
author: '作者',
quote: '引用',
@ -55,12 +55,12 @@ export const messages = {
seeMore: '查看更多',
inventionpatent: '发明专利',
practicalAppearance: '实用外观',
patent:'专利',
patent: '专利',
monograph: '专著',
paper: '论文',
scientificResearch: '科学研究',
sfeLintroduce: 'S³FEL介绍',
develHistory:'发展历程',
develHistory: '发展历程',
sfeltrailer: 'S³FEL宣传片',
geographicLocation: '地理位置',
organization: '机构设置',
@ -114,7 +114,7 @@ export const messages = {
pleaseEnterPatentOfficer: 'Please enter the patent name/inventor name/application number',
patentName: 'Patent title',
patentClassification: 'Patent classification',
ApplicationNumber:'Application number',
ApplicationNumber: 'Application number',
AuthorizationDate: 'Authorization Date',
inventor: 'Inventor',
Pleaseselect: 'Please select',
@ -125,13 +125,13 @@ export const messages = {
authorPersion: 'Author',
seeMore: 'See more',
inventionpatent: 'Invention Patent',
practicalAppearance:'Practical appearance',
practicalAppearance: 'Practical appearance',
patent: 'Patent',
monograph: 'Monograph',
paper: 'Paper',
scientificResearch: 'Scientific research',
sfeLintroduce: 'Sfe lintroduce',
develHistory:'Development history',
develHistory: 'Development history',
sfeltrailer: 'Sfel trailer',
geographicLocation: 'geographic location',
organization: 'Organization',

@ -41,7 +41,7 @@
</div> -->
</div>
</div>
<div class="copyright">Copyright ©深圳综合粒子设施研究院 粤ICP备2020131940号 粤公安网34565432456765432</div>
<div class="copyright">Copyright ©深圳综合粒子设施研究院 粤ICP备2020131940号-1 粤公网安备44031102000586</div>
</div>
</template>
<script>

@ -10,7 +10,6 @@
<div class="left">
<h2>{{ form.title }}</h2>
<div class="meta">{{ $t('column.time') }}{{ form.activityStartTime }}</div>
<div v-if="form.offlineLocation" class="meta">{{ $t('column.address') }}{{ form.offlineLocation }}</div>
<div v-if="form.onlineLocation" class="meta">{{ $t('column.online') }}{{ form.onlineLocation }}</div>
<div v-if="form.offlineLocation" class="meta">{{ $t('column.offline') }}{{ form.offlineLocation }}</div>
<div v-if="form.keynoteSpeaker" class="meta">{{ $t('column.speaker') }}{{ form.keynoteSpeaker }}</div>

@ -245,16 +245,16 @@
<img v-if="info.listStyleId !== 74" class="pic" :src="item.titleImg" alt=""
onerror="javascript:this.src='./images/1.png?id=1';" />
<template v-else-if="item.fileList">
<template v-else-if="item.fileList && item.fileList.length">
<!-- <el-image class="media-pic"
:style="{backgroundImage: 'url(https://new.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521)'}"
src="https://new.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521"
:preview-src-list="['https://new.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521']">
:style="{backgroundImage: 'url(https://www.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521)'}"
src="https://www.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521"
:preview-src-list="['https://www.iasf.ac.cn/iasf/sysFiles/preview/1706961813193707521']">
</el-image> -->
<video
v-if="Util.isVideo(item.fileList[0].fileName.substring(item.fileList[0].fileName.lastIndexOf('.') + 1))"
class="media-video" controls x5-playsinline x5-video-player-type="h5"
:poster="isIphone ? 'https://new.iasf.ac.cn/images/about/12.png' : ''" preload>
:poster="isIphone ? 'https://www.iasf.ac.cn/images/about/12.png' : ''" preload>
<source :src="item.fileList[0].filePath" type="video/mp4">
您的浏览器不支持 video 标签
</video>
@ -1522,5 +1522,10 @@ export default {
}
}
}
.detail {
max-width: 100%;
margin-top: 20px;
}
}
</style>

@ -137,8 +137,8 @@ export default {
.block {
padding: 2rem 0;
background: url(https://new.iasf.ac.cn/images/contactUs/3.png) 0 130px no-repeat,
url(https://new.iasf.ac.cn/images/contactUs/4.png) bottom right no-repeat;
background: url(https://www.iasf.ac.cn/images/contactUs/3.png) 0 130px no-repeat,
url(https://www.iasf.ac.cn/images/contactUs/4.png) bottom right no-repeat;
background-color: #f7f8fa;
}

@ -4,12 +4,9 @@
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div :class="['banner-item', { 'cursor-pointer': isLink(item.link.linkName) }]" @click="openLink(item)">
<img :src="item.pic" alt="">
<p class="banner-name">{{ item.title }}</p>
</div>
</el-carousel-item>
@ -19,37 +16,27 @@
<div class="block share">
<div class="inner">
<h6 v-html="modules[1].form.title"></h6>
<p class="en"
v-html="modules[1].form.des"></p>
<p class="en" v-html="modules[1].form.des"></p>
<div class="sum">{{ modules[2].form.title }}</div>
<div class="flex beamBox">
<div class="left">
<div class="des"
v-html="modules[2].form.des"></div>
<div class="des" v-html="modules[2].form.des"></div>
</div>
<img class="pic"
:src="modules[2].form.pic"
alt="">
<img class="pic" :src="modules[2].form.pic" alt="">
</div>
</div>
</div>
<div class="intro">
<div class="inner intro-inner">
<img class="pic"
:src="modules[3].form.pic"
alt="">
<div class="des"
v-html="modules[3].form.des"></div>
<img class="pic" :src="modules[3].form.pic" alt="">
<div class="des" v-html="modules[3].form.des"></div>
</div>
</div>
<div class="unit">
<div class="title"
v-html="modules[4].form.title"></div>
<img class="pic"
:src="modules[4].form.pic"
alt="">
<div class="title" v-html="modules[4].form.title"></div>
<img class="pic" :src="modules[4].form.pic" alt="">
</div>
</div>
</template>
@ -93,18 +80,23 @@ export default {
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
$banner-height: 21.6rem;
.wrap {
background: url(https://new.iasf.ac.cn/images/device/4.png) bottom right/auto no-repeat;
background: url(https://www.iasf.ac.cn/images/device/4.png) bottom right/auto no-repeat;
/deep/ .el-carousel {
height: $banner-height;
.el-carousel__container {
height: $banner-height;
}
img {
height: $banner-height;
}
}
}
.banner-item {
.banner-name {
font-size: 2.16rem;
@ -112,24 +104,30 @@ $banner-height: 21.6rem;
bottom: 20%;
}
}
.block {
padding: 3.85rem 0;
.inner {
h6 {
font-size: 1.76rem;
}
.en {
font-size: 1.76rem;
margin: 0px 0 2rem;
}
.sum {
margin-top: 3rem;
font-size: 0.96rem;
}
}
}
.beamBox {
position: relative;
.imgText {
position: absolute;
right: 2rem;
@ -137,6 +135,7 @@ $banner-height: 21.6rem;
display: flex;
font-size: 0.9rem;
font-weight: 400;
.readio {
width: 7px;
height: 7px;
@ -147,15 +146,19 @@ $banner-height: 21.6rem;
}
}
}
.share {
position: relative;
.beamBox {
align-items: center;
}
.left {
width: 50%;
padding-right: 66px;
}
h6 {
position: relative;
font-size: 1.92rem;
@ -163,6 +166,7 @@ $banner-height: 21.6rem;
font-weight: bold;
color: #333333;
}
.en {
margin-top: -25px;
font-size: 2.4rem;
@ -170,6 +174,7 @@ $banner-height: 21.6rem;
font-weight: 300;
color: #e3e3e3;
}
.sum {
margin-top: 60px;
font-size: 1.2rem;
@ -178,6 +183,7 @@ $banner-height: 21.6rem;
color: #333333;
line-height: 44px;
}
.des {
margin-top: 1.25rem;
font-size: 0.88rem;
@ -186,25 +192,30 @@ $banner-height: 21.6rem;
-webkit-line-clamp: inherit;
overflow: visible;
}
.pic {
width: 50%;
margin-top: 10px;
border-top-left-radius: 20px;
}
}
.intro {
height: 19.65rem;
margin-bottom: 67px;
.intro-inner {
display: flex;
align-items: center;
height: 100%;
background-color: #2e4984;
}
.pic {
width: 50%;
height: 100%;
}
.des {
width: 50%;
height: 19.65rem;
@ -215,10 +226,12 @@ $banner-height: 21.6rem;
-webkit-line-clamp: 7; //3
}
}
.unit {
width: 986px;
padding-bottom: 60px;
margin: 0 auto;
.title {
padding-left: 0.93rem;
margin-bottom: 0.93rem;
@ -235,17 +248,20 @@ $banner-height: 21.6rem;
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 4rem;
right: 4rem;
}
}
.share {
width: 90%;
padding-left: 0;
margin: 0 auto;
}
.beamBox {
display: flex;
flex-direction: column;
@ -254,25 +270,31 @@ $banner-height: 21.6rem;
.left {
width: 100%;
}
.des {
-webkit-line-clamp: 100;
}
.pic {
margin-top: 10px;
width: 100%;
height: auto;
}
}
.intro {
width: 90%;
padding: 1rem 0;
height: auto;
.intro-inner {
flex-direction: column;
}
.pic {
width: 80%;
}
.des {
width: 80%;
height: auto;
@ -280,8 +302,10 @@ $banner-height: 21.6rem;
-webkit-line-clamp: 100;
}
}
.unit {
width: 95%;
img {
width: 100%;
}

@ -4,12 +4,9 @@
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div :class="['banner-item', { 'cursor-pointer': isLink(item.link.linkName) }]" @click="openLink(item)">
<img :src="item.pic" alt="">
<p class="banner-name">{{ item.title }}</p>
</div>
</el-carousel-item>
@ -20,33 +17,22 @@
<div class="inner">
<h6 v-html="modules[1].form.title"></h6>
<p class="en">{{ modules[1].form.subTitle }}</p>
<div class="card"
v-html="modules[1].form.des"></div>
<div class="card" v-html="modules[1].form.des"></div>
<div class="texts">
<div class="des"
v-html="modules[2].form.des"></div>
<img class="pic"
:src="modules[2].form.pic"
alt="">
<div class="des" v-html="modules[2].form.des"></div>
<img class="pic" :src="modules[2].form.pic" alt="">
</div>
</div>
</div>
<div class="inner intro">
<img class="bg"
src="https://new.iasf.ac.cn/images/device/7.png"
alt="">
<img class="pic"
:src="modules[3].form.pic"
alt="">
<img class="bg" src="https://www.iasf.ac.cn/images/device/7.png" alt="">
<img class="pic" :src="modules[3].form.pic" alt="">
</div>
<div class="unit">
<div class="title"
v-html="modules[4].form.title"></div>
<img class="pic"
:src="modules[4].form.pic"
alt="">
<div class="title" v-html="modules[4].form.title"></div>
<img class="pic" :src="modules[4].form.pic" alt="">
</div>
</div>
</template>
@ -90,18 +76,23 @@ export default {
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
$banner-height: 21.6rem;
.wrap {
background: url(https://new.iasf.ac.cn/images/device/4.png) bottom right/auto no-repeat;
background: url(https://www.iasf.ac.cn/images/device/4.png) bottom right/auto no-repeat;
/deep/ .el-carousel {
height: $banner-height;
.el-carousel__container {
height: $banner-height;
}
img {
height: $banner-height;
}
}
}
.banner-item {
.banner-name {
font-size: 2.16rem;
@ -109,23 +100,29 @@ $banner-height: 21.6rem;
bottom: 20%;
}
}
.block {
padding: 3.85rem 0;
.inner {
h6 {
font-size: 2.16rem;
}
.en {
font-size: 1.76rem;
margin: 0px 0 2rem;
}
}
}
.share {
position: relative;
.texts {
display: flex;
}
h6 {
position: relative;
font-size: 1.76rem;
@ -133,6 +130,7 @@ $banner-height: 21.6rem;
font-weight: bold;
color: #333333;
}
.en {
margin: -25px 0 40px;
font-size: 2.2rem;
@ -140,6 +138,7 @@ $banner-height: 21.6rem;
font-weight: 300;
color: #e3e3e3;
}
.card {
padding: 1.5rem;
margin-bottom: 20px;
@ -149,8 +148,9 @@ $banner-height: 21.6rem;
font-weight: 500;
color: #ffffff;
line-height: 2.375rem;
background: url(https://new.iasf.ac.cn/images/device/5.png) center center no-repeat;
background: url(https://www.iasf.ac.cn/images/device/5.png) center center no-repeat;
}
.des {
flex-grow: 1;
margin: 25px 4rem 0 0;
@ -160,18 +160,22 @@ $banner-height: 21.6rem;
line-height: 2;
overflow: visible;
}
.pic {
width: 44.375rem;
height: auto;
border-top-left-radius: 20px;
}
}
.intro {
position: relative;
margin: 60px auto;
.bg {
height: 35.73rem;
}
.pic {
position: absolute;
top: 3.015rem;
@ -180,10 +184,12 @@ $banner-height: 21.6rem;
height: 29.74rem;
}
}
.unit {
width: 986px;
padding-bottom: 60px;
margin: 0 auto;
.title {
padding-left: 0.93rem;
margin-bottom: 0.93rem;
@ -201,21 +207,25 @@ $banner-height: 21.6rem;
position: relative;
margin-left: -2.5%;
}
.inner {
max-width: none;
width: 95%;
.texts {
position: static;
display: flex;
flex-direction: column;
align-items: flex-end;
margin-left: 15%;
.des {
width: 100%;
-webkit-line-clamp: 100;
}
}
}
.pic {
width: 50%;
margin-top: 20px;
@ -225,22 +235,27 @@ $banner-height: 21.6rem;
.bg {
width: 100%;
}
.intro {
height: 36rem;
margin-top: 0;
.pic {
width: 100%;
left: 0;
top: 6%;
}
}
.unit {
width: 95%;
img {
width: 100%;
}
}
}
@media (max-width: 980px) {
.share {
.pic {
@ -248,6 +263,7 @@ $banner-height: 21.6rem;
}
}
}
@media (max-width: 640px) {
.share {
.inner {
@ -255,12 +271,15 @@ $banner-height: 21.6rem;
margin: 0 auto;
}
}
.des {
margin-right: 0;
}
}
.intro {
height: auto;
.bg,
.pic {
position: static;

@ -4,12 +4,9 @@
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div :class="['banner-item', { 'cursor-pointer': isLink(item.link.linkName) }]" @click="openLink(item)">
<img :src="item.pic" alt="">
<p class="banner-name">{{ item.title }}</p>
</div>
</el-carousel-item>
@ -18,21 +15,15 @@
<div class="block history gray">
<div class="inner">
<h2 class="wow fadeInLeft"
v-html="modules[1].form.title"></h2>
<p class="en"
v-html="modules[1].form.des"></p>
<div class="texts wow fadeInDown"
data-wow-delay="0.5s">
<h2 class="wow fadeInLeft" v-html="modules[1].form.title"></h2>
<p class="en" v-html="modules[1].form.des"></p>
<div class="texts wow fadeInDown" data-wow-delay="0.5s">
<div class="left">
<h6>{{ modules[2].form.title }}</h6>
<div class="line"></div>
<div class="text"
v-html="modules[2].form.des"></div>
<div class="text" v-html="modules[2].form.des"></div>
</div>
<img class="bg"
src="https://new.iasf.ac.cn/images/device/10.png"
alt="" />
<img class="bg" src="https://www.iasf.ac.cn/images/device/10.png" alt="" />
</div>
</div>
</div>
@ -40,16 +31,12 @@
<div class="block intro">
<div class="inner">
<div class="left">
<div class="title1"
v-html="modules[3].form.title"></div>
<img :src="modules[3].form.pic"
alt="" />
<div class="title1" v-html="modules[3].form.title"></div>
<img :src="modules[3].form.pic" alt="" />
</div>
<div class="right">
<div class="title2"
v-html="modules[4].form.title"></div>
<img :src="modules[4].form.pic"
alt="" />
<div class="title2" v-html="modules[4].form.title"></div>
<img :src="modules[4].form.pic" alt="" />
</div>
</div>
</div>
@ -93,17 +80,21 @@ export default {
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
$banner-height: 21.6rem;
.wrap {
/deep/ .el-carousel {
height: $banner-height;
.el-carousel__container {
height: $banner-height;
}
img {
height: $banner-height;
}
}
}
.banner-item {
.banner-name {
font-size: 2.16rem;
@ -111,18 +102,22 @@ $banner-height: 21.6rem;
bottom: 20%;
}
}
.block {
padding: 3.85rem 0;
.inner {
h2 {
font-size: 1.76rem;
}
.en {
font-size: 1.76rem;
margin: 0px 0 2rem;
}
}
}
.history {
.inner {
width: 1200px;
@ -154,6 +149,7 @@ $banner-height: 21.6rem;
border-radius: 65px 100px 0px 0px;
transition: 0.3s;
position: relative;
.imgText {
position: absolute;
right: 0rem;
@ -162,6 +158,7 @@ $banner-height: 21.6rem;
font-size: 0.9rem;
color: #ffffff;
font-weight: 400;
.readio {
width: 7px;
height: 7px;
@ -215,13 +212,16 @@ $banner-height: 21.6rem;
.inner {
display: flex;
}
.left {
width: 30%;
}
.right {
width: 68%;
margin-left: 2%;
}
.title1 {
margin-bottom: 0.93rem;
font-size: 0.88rem;
@ -264,8 +264,10 @@ $banner-height: 21.6rem;
}
}
}
.block {
padding: 50px 0;
.inner {
.texts {
.bg {
@ -288,9 +290,11 @@ $banner-height: 21.6rem;
.inner {
width: 95%;
}
.texts {
flex-direction: column;
}
.bg {
margin: 0 auto;
}
@ -299,18 +303,21 @@ $banner-height: 21.6rem;
.inner {
flex-direction: column;
width: 95%;
.left,
.right {
width: 95%;
margin: 20px auto;
}
}
.intro {
img {
height: auto;
}
}
}
@media (max-width: 980px) {
.history {
.bg {

@ -2,9 +2,7 @@
<!-- 产业光源-大事记 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,9 +10,7 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -23,32 +19,24 @@
<h2 class="wow fadeInLeft">大事记</h2>
<p class="en">DEVELOPMENT HISTORY</p>
<div v-if="modules[1].list.length"
class="event">
<div v-if="modules[1].list.length" class="event">
<ul class="time">
<template v-for="(item, i) in modules[1].list">
<li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
<li v-if="item.isEnable" :key="i" :class="{ active: curYear == i }" @click="yearClick(i)">{{ item.title }}
</li>
</template>
</ul>
<div class="right">
<h6 class="year">{{ modules[1].list[curYear].title }}</h6>
<ul class="list">
<template v-for="(e, j) in modules[1].list[curYear].list">
<li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
<li v-if="e.isEnable" :key="j" :class="{ 'cursor-pointer': isLink(e.link.linkName) }"
@click="openLink(e)">
<div class="texts">
<p class="date">{{ e.title }}</p>
<p class="text">{{ e.des }}</p>
</div>
<el-image v-if="e.pic"
class="pic"
:src="e.pic"
:preview-src-list="[e.pic]">
<el-image v-if="e.pic" class="pic" :src="e.pic" :preview-src-list="[e.pic]">
</el-image>
</li>
</template>
@ -86,9 +74,10 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import '../../../styles/page/page.scss';
.wrap {
background: url(https://new.iasf.ac.cn/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(https://new.iasf.ac.cn/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
background: url(https://www.iasf.ac.cn/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(https://www.iasf.ac.cn/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
}
.history {
@ -99,6 +88,7 @@ export default {
font-weight: 600;
color: #1c1c1c;
}
.en {
margin: -15px 0 40px;
font-size: 2rem;
@ -107,14 +97,17 @@ export default {
color: #e3e3e3;
}
}
.event {
display: flex;
justify-content: center;
.time {
width: 200px;
padding-right: 10px;
margin-right: 20px;
border-right: 1px solid #ddd;
li {
display: flex;
justify-content: flex-end;
@ -128,23 +121,27 @@ export default {
color: #666;
box-shadow: inset 0px -1px 0px 0px #dddddd;
cursor: pointer;
&.active {
font-weight: 800;
color: #1a81f4;
background: linear-gradient(90deg, #ffffff 0%, #f3f8ff 100%);
&:before {
content: '';
width: 18px;
height: 18px;
background: url(https://new.iasf.ac.cn/images/overviewDevHistory/3.png) no-repeat;
background: url(https://www.iasf.ac.cn/images/overviewDevHistory/3.png) no-repeat;
margin-right: 20px;
}
}
}
}
.right {
width: 1000px;
}
.year {
margin: 0 0 20px 20px;
font-size: 3.2rem;
@ -152,8 +149,10 @@ export default {
font-weight: 800;
color: #1a81f4;
}
.list {
border-top: 1px solid #ddd;
li {
display: flex;
justify-content: space-between;
@ -161,9 +160,11 @@ export default {
padding: 30px;
border-bottom: 1px solid #ddd;
}
.texts {
width: 500px;
}
.date {
margin-bottom: 15px;
font-size: 1.2rem;
@ -171,10 +172,12 @@ export default {
font-weight: 600;
color: #333;
}
.text {
font-size: 1.1rem;
color: #333;
@include mul-ellipsis(3);
&:before {
content: '';
display: inline-block;
@ -185,6 +188,7 @@ export default {
transform: rotate(45deg);
}
}
.pic {
width: 300px;
height: 195px;
@ -195,37 +199,48 @@ export default {
@media (max-width: 1200px) {
.tab-content {
padding: 20px 0;
.org {
width: 100%;
padding: 15px;
flex-direction: column;
.left {
width: 100%;
}
}
}
.block {
padding: 2rem 0;
.inner {
width: 90%;
.event {
flex-direction: column;
.time {
width: 100%;
li {
width: 100%;
justify-content: flex-start;
}
}
.right {
width: 100%;
.list {
li {
padding: 1.25rem;
flex-direction: column;
.texts {
width: 100%;
}
.pic {
width: 100%;
height: auto;

@ -1,53 +1,37 @@
<template>
<div class="wrap">
<el-carousel v-if="modules[0].list"
:interval="6000"
<el-carousel v-if="modules[0].list" :interval="6000"
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<img :class="[{'cursor-pointer': isLink(item.link.linkName)}]"
width="100%"
:src="item.pic"
alt=""
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<img :class="[{ 'cursor-pointer': isLink(item.link.linkName) }]" width="100%" :src="item.pic" alt=""
@click="openLink(item)">
</el-carousel-item>
</template>
</el-carousel>
<div class="block banner-block"
id="part1">
<div class="block banner-block" id="part1">
<div class="inner">
<div class="title wow fadeInUp">
<h5>
{{ modules[1].form.title }}
<span class="sub">{{ modules[1].form.subTitle }}</span>
</h5>
<span class="more"
@click="toAll(modules[2].form)">MORE</span>
<span class="more" @click="toAll(modules[2].form)">MORE</span>
</div>
<template v-if="articles.length">
<div class="sfel-banner wow fadeInDown"
data-wow-delay="0.5s"
@click="toArtice(curArticle, modules[2].form)">
<div style="width: 50%;overflow: hidden;"
class="newBox">
<img class="pic"
width="100%"
height="100%"
:src="curArticle.titleImg"
alt="">
<div class="sfel-banner wow fadeInDown" data-wow-delay="0.5s" @click="toArtice(curArticle, modules[2].form)">
<div style="width: 50%;overflow: hidden;" class="newBox">
<img class="pic" width="100%" height="100%" :src="curArticle.titleImg" alt="">
</div>
<div class="right">
<h6>{{ curArticle.title }}</h6>
<div class="des"
v-html="curArticle.mainBody"></div>
<p class="meta">{{ curArticle.releaseTime }} {{ curArticle.classificationName && ' | ' + curArticle.classificationName }}</p>
<div class="des" v-html="curArticle.mainBody"></div>
<p class="meta">{{ curArticle.releaseTime }} {{ curArticle.classificationName && ' | ' +
curArticle.classificationName }}</p>
<ul class="inds">
<li v-for="i in articles.length > 3 ? 4 : articles.length"
:key="i"
:class="{active: curInd == i - 1}"
<li v-for="i in articles.length > 3 ? 4 : articles.length" :key="i" :class="{ active: curInd == i - 1 }"
@click.stop="switchCarousel(i - 1)"></li>
</ul>
</div>
@ -55,20 +39,13 @@
<ul class="card">
<template v-for="(item, i) in articles">
<li v-if="i > 3 && i < 7"
:key="i"
class="wow fadeInDown"
:data-wow-delay="(0.1 * i).toFixed(1) + 's'">
<img class="pic"
:src="item.titleImg"
alt="">
<li v-if="i > 3 && i < 7" :key="i" class="wow fadeInDown" :data-wow-delay="(0.1 * i).toFixed(1) + 's'">
<img class="pic" :src="item.titleImg" alt="">
<div class="texts">
<p class="meta">{{ item.releaseTime }} {{ item.classificationName && ' | ' + item.classificationName }}</p>
<p class="meta">{{ item.releaseTime }} {{ item.classificationName && ' | ' + item.classificationName
}}</p>
<div class="des">{{ item.title }}</div>
<img class="arrow"
src="@/assets/images/arrow.png"
alt=""
@click="toArtice(item, modules[2].form)">
<img class="arrow" src="@/assets/images/arrow.png" alt="" @click="toArtice(item, modules[2].form)">
</div>
</li>
</template>
@ -77,8 +54,7 @@
</div>
</div>
<div class="block talent"
id="part2">
<div class="block talent" id="part2">
<div class="inner">
<div class="title wow fadeInUp">
<h5>
@ -88,84 +64,52 @@
<!-- <span class="more" @click="toAll(modules[4].form)">MORE</span> -->
</div>
<div class="shows">
<div class="left wow fadeInLeft"
data-wow-delay="0.5s">
<div class="left wow fadeInLeft" data-wow-delay="0.5s">
<h6>{{ modules[4].form.title }}</h6>
<div class="text"
v-html="modules[4].form.des"></div>
<el-button v-if="isLink(modules[4].form.link.linkName)"
type="primary"
round
@click="openLink(modules[4].form)">这里跳转</el-button>
<div class="text" v-html="modules[4].form.des"></div>
<el-button v-if="isLink(modules[4].form.link.linkName)" type="primary" round
@click="openLink(modules[4].form)">{{ $t('column.more') }}</el-button>
</div>
<img :src="modules[4].form.pic"
alt=""
class="pic">
<img :src="modules[4].form.pic" alt="" class="pic">
</div>
</div>
</div>
<div class="block conference"
id="part3">
<div class="block conference" id="part3">
<div class="inner">
<div class="title wow fadeInUp">
<h5>
{{ modules[5].form.title }}
<span class="sub">{{ modules[5].form.subTitle }}</span>
</h5>
<span class="more"
@click="toAll(modules[6].form)">MORE</span>
<span class="more" @click="toAll(modules[6].form)">MORE</span>
</div>
<div class="shows"
v-if="articles2.length">
<div class="left wow fadeInLeft"
data-wow-delay="0.5s"
@click="toArtice(articles2[0], modules[6].form)">
<img class="pic"
width="100%"
height="100%"
:src="articles2[0].titleImg"
alt="">
<div class="shows" v-if="articles2.length">
<div class="left wow fadeInLeft" data-wow-delay="0.5s" @click="toArtice(articles2[0], modules[6].form)">
<img class="pic" width="100%" height="100%" :src="articles2[0].titleImg" alt="">
<div class="text">{{ articles2[0].title }}</div>
</div>
<ul class="card-list wow fadeInRight"
data-wow-delay="0.5s">
<ul class="card-list wow fadeInRight" data-wow-delay="0.5s">
<template v-for="(item, i) in articles2">
<li v-if="i && i < 4"
:key="i"
@click="toArtice(item, modules[6].form)">
<img class="pic"
:src="item.titleImg"
alt="">
<li v-if="i && i < 4" :key="i" @click="toArtice(item, modules[6].form)">
<img class="pic" :src="item.titleImg" alt="">
<div class="texts">
<h6>{{ item.title }}</h6>
<p class="sum">{{ item.mainBody }}</p>
<p v-if="item.keynoteSpeaker"
class="text">
<img class="icon"
src="@/assets/images/mine.png"
alt="">
<p v-if="item.keynoteSpeaker" class="text">
<img class="icon" src="@/assets/images/mine.png" alt="">
{{ item.keynoteSpeaker }}
</p>
<p v-if="item.activityStartTime"
class="text">
<img class="icon"
src="@/assets/images/time.png"
alt="">
<p v-if="item.activityStartTime" class="text">
<img class="icon" src="@/assets/images/time.png" alt="">
会议时间: {{ item.activityStartTime + ' ~ ' + item.activityEndTime }}
</p>
<p v-if="item.onlineLocation"
class="text">
<img class="icon"
src="@/assets/images/online.png"
alt="">
<p v-if="item.onlineLocation" class="text">
<img class="icon" src="@/assets/images/online.png" alt="">
{{ item.onlineLocation }}
</p>
<p v-if="item.offlineLocation"
class="text">
<img class="icon"
src="@/assets/images/location.png"
alt="">
<p v-if="item.offlineLocation" class="text">
<img class="icon" src="@/assets/images/location.png" alt="">
{{ item.offlineLocation }}
</p>
</div>
@ -176,37 +120,29 @@
</div>
</div>
<div class="block program"
id="part4">
<div class="block program" id="part4">
<div class="inner">
<div class="title wow fadeInUp">
<h5>
{{ modules[7].form.title }}
<span class="sub">{{ modules[7].form.subTitle }}</span>
</h5>
<span class="more"
@click="toAll(modules[8].form)">MORE</span>
<span class="more" @click="toAll(modules[8].form)">MORE</span>
</div>
<template v-if="articles3.length">
<div class="slide"
@click="toArtice(articles3[0], modules[8].form)">
<div class="slide" @click="toArtice(articles3[0], modules[8].form)">
<div class="texts">
<h6>{{ articles3[0].title }}</h6>
<div class="des">{{ articles3[0].mainBody }}</div>
<div class="meta">发表日期{{ articles3[0].releaseTime }} &emsp;浏览量{{ articles3[0].totalBrowsing }}</div>
</div>
<div class="img-wrap">
<img class="pic"
:src="articles3[0].titleImg"
alt="">
<img class="pic" :src="articles3[0].titleImg" alt="">
</div>
</div>
<ul class="list">
<template v-for="(item, i) in articles3">
<li v-if="i && i < 4"
:key="i"
class="wow fadeInDown"
:data-wow-delay="(0.1 * i).toFixed(1) + 's'"
<li v-if="i && i < 4" :key="i" class="wow fadeInDown" :data-wow-delay="(0.1 * i).toFixed(1) + 's'"
@click="toArtice(item, modules[8].form)">
<div class="des">{{ item.title }}</div>
<p class="date">{{ item.releaseTime }}</p>
@ -332,8 +268,10 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import '../../../styles/page/page.scss';
/deep/ .el-carousel {
height: 100vh;
.el-carousel__container,
.el-carousel__item,
img {
@ -341,6 +279,7 @@ export default {
object-fit: cover;
}
}
.title {
display: flex;
justify-content: space-between;
@ -348,6 +287,7 @@ export default {
padding-bottom: 25px;
margin-bottom: 30px;
border-bottom: 1px solid #ddd;
h5 {
padding-left: 16px;
font-size: 1.6rem;
@ -357,46 +297,57 @@ export default {
line-height: 1;
border-left: 6px solid #2b96ef;
}
.sub {
font-size: 1.1rem;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #afb7bf;
}
.more {
font-size: 0.8rem;
color: #666;
cursor: pointer;
}
}
/deep/.articles {
width: 50%;
.el-carousel__indicators--horizontal {
bottom: 20px;
left: 804px;
}
}
.banner-block {
background: url(../../../assets/images/sfel/2.png) 0 0 / cover no-repeat;
}
.sfel-banner {
display: flex;
cursor: pointer;
.pic {
transition: 0.5s;
object-fit: cover;
&:hover {
transform: scale(1.3);
}
}
.right {
position: relative;
width: 50%;
padding: 50px 50px 30px;
background: #1583ff;
color: #fff;
&:hover {
background: #465f85;
h6,
.des,
.meta {
@ -405,11 +356,13 @@ export default {
}
}
}
.inds {
position: absolute;
bottom: 40px;
left: 60px;
display: flex;
li {
width: 10px;
height: 10px;
@ -417,6 +370,7 @@ export default {
background: #ffffff;
border-radius: 50%;
transition: 0.2s;
&.active {
width: 30px;
background: rgba(255, 255, 255, 0.3);
@ -424,25 +378,30 @@ export default {
}
}
}
h6 {
font-size: 1.3rem;
transition: 0.3s;
}
.des {
margin: 30px 0;
font-size: 0.9rem;
line-height: 24px;
transition: 0.3s;
}
.meta {
font-size: 0.8rem;
transition: 0.3s;
}
}
.card {
display: flex;
flex-wrap: wrap;
margin-top: 40px;
li {
width: calc((100% - 56px) / 3);
margin-right: 28px;
@ -450,25 +409,31 @@ export default {
border-radius: 6px;
transition: 0.3s;
background-color: #fff;
&:hover {
transform: scale(1.05);
}
&:last-child {
margin-right: 0;
}
}
.pic {
width: 100%;
// height: 259px;
object-fit: cover;
}
.texts {
padding: 40px 30px;
}
.meta {
font-size: 0.9rem;
color: #666;
}
.des {
height: 60px;
margin: 10px 0;
@ -479,28 +444,34 @@ export default {
line-height: 28px;
-webkit-line-clamp: 2;
}
.arrow {
width: 36px;
}
}
.talent {
.shows {
display: flex;
color: #fff;
background: #1a2844;
border-radius: 0px 100px 0px 100px;
.left {
width: 50%;
padding: 120px 0 0 5%;
}
h6 {
font-size: 1.6rem;
}
.text {
margin: 20px 0;
font-size: 1rem;
line-height: 2;
}
.pic {
width: 50%;
min-height: 465px;
@ -508,11 +479,14 @@ export default {
}
}
}
.conference {
background: url(../../../assets/images/sfel/4.png) 0 0 / cover no-repeat;
.shows {
display: flex;
}
.left {
position: relative;
width: 550px;
@ -521,6 +495,7 @@ export default {
margin-right: 20px;
cursor: pointer;
overflow: hidden;
.text {
position: absolute;
bottom: 0;
@ -534,18 +509,22 @@ export default {
color: #ffffff;
background-color: rgba(0, 0, 0, 0.57);
}
.pic {
transition: 0.5s;
object-fit: cover;
}
&:hover {
.pic {
transform: scale(1.3);
}
}
}
.card-list {
width: 600px;
li {
display: flex;
align-items: center;
@ -554,34 +533,41 @@ export default {
background-color: #fff;
cursor: pointer;
transition: 0.3s;
&:last-child {
margin-bottom: 0;
}
&:hover {
transform: translateX(20px);
}
}
.pic {
width: 167px;
height: 167px;
margin-right: 36px;
object-fit: cover;
}
.texts {
width: calc(100% - 210px);
}
h6 {
margin-bottom: 10px;
font-size: 1.2rem;
color: #333;
@include ellipsis;
}
.sum {
margin-bottom: 6px;
font-size: 1rem;
color: #666;
@include ellipsis;
}
.text {
display: flex;
align-items: center;
@ -589,6 +575,7 @@ export default {
font-size: 0.9rem;
@include ellipsis;
}
.icon {
margin-right: 5px;
}
@ -597,50 +584,60 @@ export default {
.program {
background: #fff;
.slide {
display: flex;
margin-bottom: 14px;
cursor: pointer;
}
.texts {
width: 51%;
padding: 56px;
background: #fbfbfb;
h6 {
font-size: 1.3rem;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #333333;
}
.des {
margin: 35px 0 25px;
font-size: 1rem;
color: #666;
line-height: 32px;
}
.meta {
font-size: 0.9rem;
color: #666;
}
}
.img-wrap {
width: 49%;
min-height: 334px;
overflow: hidden;
}
.pic {
width: 100%;
height: 100%;
transition: 0.5s;
object-fit: cover;
}
&:hover {
.pic {
transform: scale(1.3);
}
}
.list {
display: flex;
li {
width: calc((100% - 28px) / 3);
height: 204px;
@ -649,17 +646,21 @@ export default {
background: url(../../../assets/images/sfel/7.png) no-repeat center;
transition: 0.5s;
cursor: pointer;
&:nth-child(2) {
background-image: url(../../../assets/images/sfel/8.png);
}
&:nth-child(3) {
margin-right: 0;
background-image: url(../../../assets/images/sfel/9.png);
}
&:hover {
transform: translateY(20px);
}
}
.des {
height: 90px;
margin-bottom: 30px;
@ -669,6 +670,7 @@ export default {
color: #ffffff;
line-height: 30px;
}
.date {
font-size: 0.9rem;
font-family: LaoSangamMN;
@ -676,6 +678,7 @@ export default {
}
}
}
.tools {
z-index: 9;
position: fixed;
@ -683,11 +686,13 @@ export default {
left: 0;
width: 180px;
text-align: center;
.logo {
padding: 15px 0;
background: #0c60be;
box-shadow: 0px 0px 20px 0px rgba(184, 191, 200, 0.3);
}
.nav {
li {
padding: 0 10px;
@ -697,9 +702,11 @@ export default {
background-color: #1d1d1d;
cursor: pointer;
@include ellipsis;
&.active {
background-color: #1583ff;
}
&:hover {
background-color: #1583ff;
}
@ -710,46 +717,59 @@ export default {
@media (max-width: 1200px) {
.sfel-banner {
flex-direction: column;
.newBox {
width: 100% !important;
}
.right {
margin-top: 10px;
width: 100%;
height: 410px;
}
}
.card {
flex-direction: column;
li {
width: 100%;
margin-top: 20px;
}
}
.shop-shows {
flex-direction: column;
.left {
width: 100%;
}
.right {
width: 100%;
margin-top: 20px;
}
}
.shows {
flex-direction: column;
.left {
width: 100%;
}
.card-list {
width: 100%;
margin-top: 20px;
li {
flex-direction: column;
.pic {
width: 100% !important;
margin-right: 0;
}
.texts {
margin-top: 20px;
width: 100%;
@ -757,54 +777,66 @@ export default {
}
}
}
.talent {
.shows {
.left {
width: 100%;
margin-bottom: 20px;
}
.pic {
width: 100%;
min-height: 0;
}
}
}
.media-wrap {
flex-direction: column;
.left {
width: 100%;
}
.right {
width: 100%;
margin-top: 20px;
}
}
.news {
flex-direction: column;
li {
margin-top: 30px;
width: 100%;
}
}
.slide,
.list {
flex-direction: column;
.texts,
.img-wrap {
width: 100%;
}
}
.list {
li {
width: 100% !important;
margin-top: 20px;
}
}
.slides {
div {
flex: 1;
}
}
.program {
.list {
li {
@ -812,6 +844,7 @@ export default {
}
}
}
#part6 {
.slide {
.texts {

@ -2,9 +2,7 @@
<!-- 产业光源-地理位置 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,56 +10,39 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
<div class="tab-content">
<div class="item wow bounceInLeft"
data-wow-delay="0.5s"
:class="{'cursor-pointer': isLink(modules[1].form.link.linkName)}"
@click="openLink(modules[1].form)">
<div class="item wow bounceInLeft" data-wow-delay="0.5s"
:class="{ 'cursor-pointer': isLink(modules[1].form.link.linkName) }" @click="openLink(modules[1].form)">
<div class="img-wrap">
<img class="pic"
:src="modules[1].form.pic"
alt="">
<img class="pic" :src="modules[1].form.pic" alt="">
</div>
<div class="texts">
<h6>{{ modules[1].form.title }}</h6>
<div class="des"
v-html="modules[1].form.des"></div>
<div class="des" v-html="modules[1].form.des"></div>
</div>
</div>
<div class="item wow bounceInRight"
data-wow-delay="0.6s"
:class="{'cursor-pointer': isLink(modules[2].form.link.linkName)}"
@click="openLink(modules[2].form)">
<div class="item wow bounceInRight" data-wow-delay="0.6s"
:class="{ 'cursor-pointer': isLink(modules[2].form.link.linkName) }" @click="openLink(modules[2].form)">
<div class="img-wrap">
<img class="pic"
:src="modules[2].form.pic"
alt="">
<img class="pic" :src="modules[2].form.pic" alt="">
</div>
<div class="texts">
<h6>{{ modules[2].form.title }}</h6>
<div class="des"
v-html="modules[2].form.des"></div>
<div class="des" v-html="modules[2].form.des"></div>
</div>
</div>
<div class="item wow bounceInLeft"
data-wow-delay="0.5s"
:class="{'cursor-pointer': isLink(modules[3].form.link.linkName)}"
@click="openLink(modules[3].form)">
<div class="item wow bounceInLeft" data-wow-delay="0.5s"
:class="{ 'cursor-pointer': isLink(modules[3].form.link.linkName) }" @click="openLink(modules[3].form)">
<div class="img-wrap">
<img class="pic"
:src="modules[3].form.pic"
alt="">
<img class="pic" :src="modules[3].form.pic" alt="">
</div>
<div class="texts">
<h6>{{ modules[3].form.title }}</h6>
<div class="des"
v-html="modules[3].form.des"></div>
<div class="des" v-html="modules[3].form.des"></div>
</div>
</div>
</div>
@ -92,70 +73,84 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import '../../../styles/page/page.scss';
.tab-content {
width: 70%;
max-width: 1504px;
padding-bottom: 100px;
margin: 30px auto 0;
.item {
display: flex;
padding: 42px;
margin-bottom: 36px;
color: #333;
background: #f5f5f5 url(https://new.iasf.ac.cn/images/overviewSetup/1.png) right bottom/auto no-repeat;
background: #f5f5f5 url(https://www.iasf.ac.cn/images/overviewSetup/1.png) right bottom/auto no-repeat;
transition: 0.5s;
&:nth-child(even) {
justify-content: space-between;
flex-direction: row-reverse;
background-position: 30% 100%;
.texts {
padding-left: 0;
}
}
&:hover {
.pic {
transform: scale(1.1);
}
}
}
.img-wrap {
height: 383px;
overflow: hidden;
}
.pic {
width: 100%;
height: 100%;
transition: 0.5s;
}
.texts {
width: 707px;
padding: 98px 72px 30px 80px;
}
h6 {
margin-bottom: 24px;
font-size: 2rem;
font-family: PingFangSC-Light, PingFang SC;
font-weight: 300;
}
.des {
font-size: 1rem;
line-height: 33px;
-webkit-line-clamp: 8;
}
}
@media (max-width: 1200px) {
.tab-content {
width: 80%;
padding: 1.25rem 0;
.item {
padding: 0.85rem;
flex-direction: column !important;
.texts {
margin-top: 0.5rem;
width: 100%;
padding: 0;
}
}
.img-wrap {
height: auto;
}

@ -2,9 +2,7 @@
<!-- 产业光源-机构设置 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,9 +10,7 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -22,17 +18,12 @@
<div class="org">
<div class="left">
<h6>{{ modules[1].form.title }}</h6>
<div class="text"
v-html="modules[1].form.des"></div>
<div class="text" v-html="modules[1].form.des"></div>
</div>
<img class="pic"
src="https://new.iasf.ac.cn/images/overviewSetup/1.png"
alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/overviewSetup/1.png" alt="">
</div>
<div class="lg-bg">
<img width="100%"
:src="modules[2].form.pic"
alt="">
<img width="100%" :src="modules[2].form.pic" alt="">
</div>
</div>
</div>
@ -62,9 +53,11 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import '../../../styles/page/page.scss';
.tab-content {
padding: 77px 0;
}
.org {
display: flex;
justify-content: space-between;
@ -74,49 +67,60 @@ export default {
margin: 0 auto 50px;
background: #fcfcfc;
border-radius: 160px;
.left {
width: 705px;
}
h6 {
font-size: 1.4rem;
font-family: AlimamaShuHeiTi-Bold, AlimamaShuHeiTi;
font-weight: bold;
color: #333;
}
.text {
margin-top: 10px;
font-size: 1rem;
color: #020202;
line-height: 2rem;
}
.pic {
width: 320px;
height: 282px;
}
}
.lg-bg {
width: 1200px;
margin: 0 auto;
text-align: center;
img {
object-fit: cover;
}
}
@media (max-width: 1200px) {
.tab-content {
padding: 20px 0;
.org {
width: 100%;
padding: 15px;
flex-direction: column;
.left {
width: 100%;
}
img {
display: none;
}
}
}
.lg-bg {
width: 90%;
}

@ -2,9 +2,7 @@
<!-- 产业光源-产业光源概况 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,9 +10,7 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -22,17 +18,12 @@
<div class="survey">
<h6>
{{ modules[1].form.title }}
<img class="title-bg"
src="https://new.iasf.ac.cn/images/overviewIntro/2.png"
alt="">
<img class="title-bg" src="https://www.iasf.ac.cn/images/overviewIntro/2.png" alt="">
</h6>
<div class="text"
v-html="modules[1].form.des"></div>
<div class="text" v-html="modules[1].form.des"></div>
</div>
<div class="lg-bg">
<img width="100%"
src="https://new.iasf.ac.cn/images/estate/3.png"
alt="">
<img width="100%" src="https://www.iasf.ac.cn/images/estate/3.png" alt="">
</div>
</div>
</div>
@ -62,16 +53,19 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import '../../../styles/page/page.scss';
.tab-content {
padding-top: 70px;
}
.survey {
width: 1294px;
min-height: 500px;
padding: 80px 86px 29px 597px;
margin: 0 auto 200px;
background: url(https://new.iasf.ac.cn/images/estate/2.png) 0 0/100% 100% no-repeat;
background: url(https://www.iasf.ac.cn/images/estate/2.png) 0 0/100% 100% no-repeat;
border-radius: 160px;
h6 {
position: relative;
margin-bottom: 30px;
@ -80,11 +74,13 @@ export default {
font-weight: bold;
color: #333;
}
.title-bg {
position: absolute;
top: -40px;
left: -20px;
}
.text {
margin-top: 10px;
font-size: 1rem;
@ -93,22 +89,27 @@ export default {
// @include mul-ellipsis(10);
}
}
.lg-bg {
width: 40%;
}
@media (max-width: 1300px) {
.tab-content {
padding: 20px 0;
}
.lg-bg {
width: 100%;
}
.survey {
width: 95%;
padding: 80px 86px 29px 47%;
margin-bottom: 2rem;
}
}
@media (max-width: 768px) {
.survey {
padding: 30px;

@ -1,29 +1,20 @@
<template>
<div class="wrap">
<div class="single-banner">
<img class="banner-img"
:src="modules[0].form.pic"
alt="" />
<img class="banner-img" :src="modules[0].form.pic" alt="" />
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
</div>
<div class="block history gray"
style="padding-bottom: 70px">
<div class="block history gray" style="padding-bottom: 70px">
<div class="inner">
<div class="texts wow fadeInDown"
data-wow-delay="0.5s">
<div class="texts wow fadeInDown" data-wow-delay="0.5s">
<div class="left">
<h2 v-html="modules[1].form.title"></h2>
<div class="text"
v-html="modules[1].form.des"></div>
<div class="text" v-html="modules[1].form.des"></div>
</div>
<img class="bg"
width="562"
height="467"
:src="modules[1].form.pic"
alt="">
<img class="bg" width="562" height="467" :src="modules[1].form.pic" alt="">
</div>
</div>
</div>
@ -31,26 +22,18 @@
<div class="cards">
<ul>
<template v-for="(item, i) in modules[2].list">
<li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="depClick(i)">{{ item.title }}</li>
<li v-if="item.isEnable" :key="i" :class="{ active: curYear == i }" @click="depClick(i)">{{ item.title }}</li>
</template>
</ul>
</div>
<div class="block committee gray"
style="padding-top: 80px">
<div v-if="modules[2].list[curYear].list[0]"
class="inner">
<div class="block committee gray" style="padding-top: 80px">
<div v-if="modules[2].list[curYear].list[0]" class="inner">
<div class="left">
<h2>{{ modules[2].list[curYear].list[0].title }}</h2>
<div class="text"
v-html="modules[2].list[curYear].list[0].des"></div>
<div class="text" v-html="modules[2].list[curYear].list[0].des"></div>
</div>
<img class="pic"
:src="modules[2].list[curYear].list[0].pic"
alt="">
<img class="pic" :src="modules[2].list[curYear].list[0].pic" alt="">
</div>
</div>
</div>
@ -101,11 +84,13 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.history {
h2 {
padding-bottom: 15px;
font-size: 1.2rem;
color: #333;
&:after {
content: '';
display: block;
@ -115,6 +100,7 @@ export default {
background: #0280f1;
}
}
.texts {
display: flex;
justify-content: space-between;
@ -123,14 +109,17 @@ export default {
background-color: #fff;
border-radius: 100px 0px 0px 0px;
transition: 0.3s;
&:hover {
transform: scale(1.05);
}
}
.left {
width: 600px;
padding-right: 20px;
}
.text {
margin: 20px 0;
font-size: 1.2rem;
@ -138,13 +127,16 @@ export default {
line-height: 31px;
@include mul-ellipsis(10);
}
.bg {
margin: -122px 0 0 0;
object-fit: cover;
}
}
.cards {
padding-top: 50px;
ul {
display: flex;
justify-content: center;
@ -152,6 +144,7 @@ export default {
width: 1200px;
margin: 0 auto;
}
li {
width: 368px;
margin: 0 30px 50px 0;
@ -160,29 +153,37 @@ export default {
color: #333;
text-align: center;
@include ellipsis();
background: url(https://new.iasf.ac.cn/images/governance/3.png) 0 0 / cover no-repeat;
background: url(https://www.iasf.ac.cn/images/governance/3.png) 0 0 / cover no-repeat;
cursor: pointer;
&:nth-child(2) {
background-image: url(https://new.iasf.ac.cn/images/governance/4.png);
background-image: url(https://www.iasf.ac.cn/images/governance/4.png);
}
&:nth-child(3) {
background-image: url(https://new.iasf.ac.cn/images/governance/5.png);
background-image: url(https://www.iasf.ac.cn/images/governance/5.png);
}
&:nth-child(4) {
background-image: url(https://new.iasf.ac.cn/images/governance/4.png);
background-image: url(https://www.iasf.ac.cn/images/governance/4.png);
}
&:nth-child(5) {
background-image: url(https://new.iasf.ac.cn/images/governance/7.png);
background-image: url(https://www.iasf.ac.cn/images/governance/7.png);
}
&:nth-child(6) {
background-image: url(https://new.iasf.ac.cn/images/governance/6.png);
background-image: url(https://www.iasf.ac.cn/images/governance/6.png);
}
&:nth-child(8) {
background-image: url(https://new.iasf.ac.cn/images/governance/6.png);
background-image: url(https://www.iasf.ac.cn/images/governance/6.png);
}
&:nth-child(3n) {
margin-right: 0;
}
&:hover,
&.active {
color: #fff;
@ -190,27 +191,32 @@ export default {
}
}
}
.committee {
.inner {
display: flex;
align-items: center;
}
.left {
width: 50%;
margin-right: 2%;
}
h2 {
margin-bottom: 20px;
font-size: 1.2rem;
font-family: PingFangSC-Medium, PingFang SC;
color: #333;
}
.text {
font-size: 1rem;
font-family: PingFangSC-Regular, PingFang SC;
line-height: 1.5;
color: #333;
}
.pic {
width: 48%;
height: 300px;
@ -223,32 +229,39 @@ export default {
.texts {
flex-direction: column;
}
.left {
width: 90%;
}
.bg {
width: 100%;
margin-top: 2rem;
}
}
.cards {
ul {
width: 98%;
}
li {
width: 100%;
margin: 0 0 20px 0;
}
}
}
@media (max-width: 640px) {
.committee {
.inner {
flex-direction: column;
}
.left {
width: 100%;
}
.pic {
width: 100%;
margin-top: 2rem;

File diff suppressed because it is too large Load Diff

@ -88,7 +88,7 @@
</template>
<ul class="news-carousel">
<li v-if="articles1.length">
<img class="pic" src="https://new.iasf.ac.cn/images/iasf/8.png" alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/iasf/8.png" alt="">
<div class="texts">
<h6 @click="toAll(modules[6].form)">{{ getColumnTitle(modules[6].form) }} <i
class="el-icon-arrow-right"></i></h6>
@ -108,7 +108,7 @@
</div>
</li>
<li v-if="articles2.length">
<img class="pic" src="https://new.iasf.ac.cn/images/iasf/9.png" alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/iasf/9.png" alt="">
<div class="texts">
<h6 @click="toAll(modules[7].form)">{{ getColumnTitle(modules[7].form) }} <i
class="el-icon-arrow-right"></i></h6>
@ -128,7 +128,7 @@
</div>
</li>
<li v-if="articles3.length">
<img class="pic" src="https://new.iasf.ac.cn/images/iasf/10.png" alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/iasf/10.png" alt="">
<div class="texts">
<h6 @click="toAll(modules[8].form)">{{ getColumnTitle(modules[8].form) }} <i
class="el-icon-arrow-right"></i></h6>
@ -547,7 +547,7 @@ $bannerMh: 800px;
}
.card-block {
background: url(https://new.iasf.ac.cn/images/iasf/14.jpg) 0 0 / cover no-repeat;
background: url(https://www.iasf.ac.cn/images/iasf/14.jpg) 0 0 / cover no-repeat;
}
.card {
@ -632,7 +632,7 @@ $bannerMh: 800px;
}
.news-wrap {
background: url(https://new.iasf.ac.cn/images/iasf/1.png) 0 0 / cover no-repeat;
background: url(https://www.iasf.ac.cn/images/iasf/1.png) 0 0 / cover no-repeat;
}
.news-title:after {
@ -1015,7 +1015,7 @@ $bannerMh: 800px;
}
.talent-block {
background: url(https://new.iasf.ac.cn/images/iasf/11.png) 0 0 / cover no-repeat;
background: url(https://www.iasf.ac.cn/images/iasf/11.png) 0 0 / cover no-repeat;
}
.talent {
@ -1059,7 +1059,7 @@ $bannerMh: 800px;
.about {
padding: 100px 0 0;
background: url(https://new.iasf.ac.cn/images/iasf/12.png) 0 450px no-repeat;
background: url(https://www.iasf.ac.cn/images/iasf/12.png) 0 450px no-repeat;
.about-bg {
background-color: #0a7fec;
@ -1153,31 +1153,31 @@ $bannerMh: 800px;
width: 28px;
height: 28px;
margin-right: 7px;
background: url(https://new.iasf.ac.cn/images/iasf/icon1.png) no-repeat;
background: url(https://www.iasf.ac.cn/images/iasf/icon1.png) no-repeat;
}
&:nth-child(2):before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon2.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon2.png);
}
&:nth-child(2):hover:before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon2-1.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon2-1.png);
}
&:nth-child(3):before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon3.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon3.png);
}
&:nth-child(3):hover:before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon3-1.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon3-1.png);
}
&:nth-child(4):before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon4.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon4.png);
}
&:nth-child(4):hover:before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon4-1.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon4-1.png);
}
&:hover {
@ -1188,7 +1188,7 @@ $bannerMh: 800px;
background-color: rgba(1, 129, 247, 0.94);
&:before {
background-image: url(https://new.iasf.ac.cn/images/iasf/icon1-1.png);
background-image: url(https://www.iasf.ac.cn/images/iasf/icon1-1.png);
}
}
}

@ -4,12 +4,9 @@
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div :class="['banner-item', { 'cursor-pointer': isLink(item.link.linkName) }]" @click="openLink(item)">
<img :src="item.pic" alt="">
<p class="banner-name">{{ item.title }}</p>
</div>
</el-carousel-item>
@ -17,136 +14,89 @@
</el-carousel>
<div class="newsTab">
<ul class="scollBox wow fadeInLeft"
ref="newsTab">
<ul class="scollBox wow fadeInLeft" ref="newsTab">
<template v-for="(item, i) in modules[1].list">
<li v-if="item.columnName"
:class="{active: i == curColumn}"
:key="i"
@click="tabChange($event,i)">{{ item.columnName }}</li>
<li v-if="item.columnName" :class="{ active: i == curColumn }" :key="i" @click="tabChange($event, i)">{{
item.columnName }}</li>
</template>
</ul>
</div>
<div class="block">
<div class="inner"
v-if="modules[1].list[curColumn].articles && modules[1].list[curColumn].articles.length">
<div class="news-banner wow fadeInDown"
data-wow-delay="0.5s"
<div class="inner" v-if="modules[1].list[curColumn].articles && modules[1].list[curColumn].articles.length">
<div class="news-banner wow fadeInDown" data-wow-delay="0.5s"
@click="toArtice(curArticle, modules[1].list[curColumn])">
<img width="50%"
height="410"
class="titileImg"
:src="curArticle.titleImg"
alt=""
<img width="50%" height="410" class="titileImg" :src="curArticle.titleImg" alt=""
onerror="javascript:this.src='./images/3.png';">
<div class="right">
<h6>{{ curArticle.title }}</h6>
<div class="des"
v-html="curArticle.mainBody"></div>
<div class="des" v-html="curArticle.mainBody"></div>
<p class="meta">{{ curArticle.releaseTime }} {{ curArticle.author && ' | ' + curArticle.author }}</p>
<ul class="inds">
<li v-for="i in modules[1].list[curColumn].articles.length > 2 ? 3 : modules[1].list[curColumn].articles.length"
:key="i"
:class="{active: curInd == i - 1}"
@click.stop="switchCarousel(i - 1)"></li>
<li
v-for="i in modules[1].list[curColumn].articles.length > 2 ? 3 : modules[1].list[curColumn].articles.length"
:key="i" :class="{ active: curInd == i - 1 }" @click.stop="switchCarousel(i - 1)"></li>
</ul>
</div>
</div>
<ul class="card">
<template v-for="(item, i) in modules[1].list[curColumn].articles">
<li v-if="i > 2"
:key="i"
class="wow fadeInDown"
:data-wow-delay="(0.1 * i).toFixed(1) + 's'">
<img class="pic"
:src="item.titleImg"
alt="">
<li v-if="i > 2" :key="i" class="wow fadeInDown" :data-wow-delay="(0.1 * i).toFixed(1) + 's'">
<img class="pic" :src="item.titleImg" alt="">
<div class="texts">
<p class="meta">{{ item.releaseTime }} {{ item.author && ' | ' + item.author }}</p>
<div class="des">{{ item.title }}</div>
<img class="arrow"
src="@/assets/images/arrow.png"
alt=""
<img class="arrow" src="@/assets/images/arrow.png" alt=""
@click="toArtice(item, modules[1].list[curColumn])">
</div>
</li>
</template>
</ul>
<div class="more wow fadeInDown"
data-wow-delay="0.5s"
@click="toMore">more ></div>
<div class="more wow fadeInDown" data-wow-delay="0.5s" @click="toMore">more ></div>
</div>
</div>
<div class="block gray">
<div class="inner lg">
<h2 class="b-title wow fadeInUp">{{ modules[2].form.title }}</h2>
<p class="intro wow fadeInUp"
data-wow-delay="0.5s">{{ modules[2].form.des }}</p>
<div class="shop-shows"
v-if="articles.length">
<div class="left wow fadeInLeft"
data-wow-delay="0.5s"
@click="toArtice(articles[0], modules[3].form)">
<img class="pic"
width="100%"
height="400"
:src="articles[0].titleImg"
alt=""
<p class="intro wow fadeInUp" data-wow-delay="0.5s">{{ modules[2].form.des }}</p>
<div class="shop-shows" v-if="articles.length">
<div class="left wow fadeInLeft" data-wow-delay="0.5s" @click="toArtice(articles[0], modules[3].form)">
<img class="pic" width="100%" height="400" :src="articles[0].titleImg" alt=""
onerror="javascript:this.src='./images/2.png';">
<div class="texts">
<h6>{{ articles[0].title }}</h6>
<div class="des"
v-html="articles[0].mainBody"></div>
<div class="des" v-html="articles[0].mainBody"></div>
</div>
</div>
<div v-if="articles.length > 1"
class="right wow fadeInRight"
data-wow-delay="0.5s">
<div v-if="articles.length > 1" class="right wow fadeInRight" data-wow-delay="0.5s">
<ul class="show-card">
<li v-if="articles[1]"
@click="toArtice(articles[1], modules[3].form)">
<img class="pic"
:src="articles[1].titleImg"
alt="">
<li v-if="articles[1]" @click="toArtice(articles[1], modules[3].form)">
<img class="pic" :src="articles[1].titleImg" alt="">
<div class="text">{{ articles[1].title }}</div>
</li>
<li v-if="articles[2]"
@click="toArtice(articles[2], modules[3].form)">
<img class="pic"
:src="articles[2].titleImg"
alt="">
<li v-if="articles[2]" @click="toArtice(articles[2], modules[3].form)">
<img class="pic" :src="articles[2].titleImg" alt="">
<div class="text">{{ articles[2].title }}</div>
</li>
</ul>
<ul class="card-list">
<template v-for="(item, i) in articles">
<li v-if="i > 2"
:key="i">
<img class="pic"
:src="item.titleImg"
alt="">
<li v-if="i > 2" :key="i">
<img class="pic" :src="item.titleImg" alt="">
<div class="texts">
<h6>{{ item.title }}</h6>
<div class="des"
v-html="item.mainBody"></div>
<div class="des" v-html="item.mainBody"></div>
</div>
<img class="arrow"
src="@/assets/images/arrow.png"
alt=""
@click="toArtice(item, modules[3].form)">
<img class="arrow" src="@/assets/images/arrow.png" alt="" @click="toArtice(item, modules[3].form)">
</li>
</template>
</ul>
</div>
</div>
<div class="all-link m-t-10"
@click="toAll(modules[3].form)">
<span>{{$t('column.all')}} <img class="icon"
src="@/assets/images/arrow.png"
alt=""></span>
<div class="all-link m-t-10" @click="toAll(modules[3].form)">
<span>{{ $t('column.all') }} <img class="icon" src="@/assets/images/arrow.png" alt=""></span>
</div>
</div>
</div>
@ -154,18 +104,10 @@
<div class="block conference">
<div class="inner lg">
<h2 class="b-title wow fadeInUp">{{ modules[4].form.title }}</h2>
<p class="intro wow fadeInUp"
data-wow-delay="0.5s">{{ modules[4].form.des }}</p>
<div class="shows"
v-if="articles1.length">
<div class="left wow fadeInLeft"
data-wow-delay="0.5s"
@click="toArtice(articles1[0], modules[5].form)">
<img class="pic"
width="100%"
height="558"
:src="articles1[0].titleImg"
alt=""
<p class="intro wow fadeInUp" data-wow-delay="0.5s">{{ modules[4].form.des }}</p>
<div class="shows" v-if="articles1.length">
<div class="left wow fadeInLeft" data-wow-delay="0.5s" @click="toArtice(articles1[0], modules[5].form)">
<img class="pic" width="100%" height="558" :src="articles1[0].titleImg" alt=""
onerror="javascript:this.src='./images/1.png';">
<div class="texts">
<div class="meta">
@ -174,48 +116,30 @@
</div>
<div>
<h6>{{ articles1[0].title }}</h6>
<div class="des"
v-html="articles1[0].mainBody"></div>
<div class="des" v-html="articles1[0].mainBody"></div>
</div>
</div>
</div>
<ul class="card-list wow fadeInRight"
data-wow-delay="0.5s">
<ul class="card-list wow fadeInRight" data-wow-delay="0.5s">
<template v-for="(item, i) in articles1">
<li v-if="i"
:key="i"
@click="toArtice(item, modules[5].form)">
<img class="pic"
:src="item.titleImg"
alt="">
<li v-if="i" :key="i" @click="toArtice(item, modules[5].form)">
<img class="pic" :src="item.titleImg" alt="">
<div class="texts">
<h6>{{ item.title }}</h6>
<p v-if="item.keynoteSpeaker"
class="text">
<img class="icon"
src="@/assets/images/mine.png"
alt="">
<p v-if="item.keynoteSpeaker" class="text">
<img class="icon" src="@/assets/images/mine.png" alt="">
<span>{{ item.keynoteSpeaker }}</span>
</p>
<p v-if="item.activityStartTime"
class="text">
<img class="icon"
src="@/assets/images/time.png"
alt="">
<p v-if="item.activityStartTime" class="text">
<img class="icon" src="@/assets/images/time.png" alt="">
<span>Time: {{ item.activityStartTime + ' ~ ' + item.activityEndTime }}</span>
</p>
<p v-if="item.onlineLocation"
class="text">
<img class="icon"
src="@/assets/images/online.png"
alt="">
<p v-if="item.onlineLocation" class="text">
<img class="icon" src="@/assets/images/online.png" alt="">
<span>Onlone: {{ item.onlineLocation }}</span>
</p>
<p v-if="item.offlineLocation"
class="text">
<img class="icon"
src="@/assets/images/location.png"
alt="">
<p v-if="item.offlineLocation" class="text">
<img class="icon" src="@/assets/images/location.png" alt="">
<span>Address: {{ item.offlineLocation }}</span>
</p>
</div>
@ -223,10 +147,8 @@
</template>
</ul>
</div>
<div class="all-link m-t-10"
@click="toAll(modules[5].form)">
<span style="color: #fff">{{$t('column.all')}} <img class="icon"
src="@/assets/images/arrow.png"
<div class="all-link m-t-10" @click="toAll(modules[5].form)">
<span style="color: #fff">{{ $t('column.all') }} <img class="icon" src="@/assets/images/arrow.png"
alt=""></span>
</div>
</div>
@ -385,8 +307,8 @@ export default {
},
// more
toMore () {
const { column } = this.modules[1].list[this.curColumn]
column.length && this.$router.push(`/column?id=${column[column.length - 1]}`)
const { column, site } = this.modules[1].list[this.curColumn]
column.length && this.$router.push(`/column?id=${column[column.length - 1]}&siteId=${site}`)
}
}
};
@ -395,33 +317,41 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.wrap {
/deep/ .el-carousel {
height: 24rem;
.el-carousel__container {
height: 24rem;
}
img {
height: 24rem;
}
}
}
.banner-item {
.banner-name {
font-size: 2.16rem;
}
}
.block {
padding: 3.85rem 0;
}
.newsTab {
box-shadow: 0px 2px 14px 0px rgba(167, 167, 167, 0.26);
.scollBox {
width: 85.714rem;
margin: auto;
display: flex;
justify-content: center;
}
li {
flex: 1;
text-align: center;
@ -432,42 +362,52 @@ export default {
border-bottom: 4px solid transparent;
text-shadow: 0px 2px 14px rgba(167, 167, 167, 0.26);
cursor: pointer;
&.active {
color: #1583ff;
border-bottom-color: #1583ff;
}
}
}
/deep/.articles {
width: 50%;
.el-carousel__indicators--horizontal {
bottom: 1.25rem;
left: 50.25rem;
}
}
.lg {
.intro {
margin-bottom: 4rem;
}
}
.news-banner {
display: flex;
cursor: pointer;
.titileImg {
height: auto;
}
.pic {
width: 43.75rem;
height: 23.75rem;
}
.right {
position: relative;
width: 50%;
padding: 2.5rem 2.5rem 1.5rem;
background: #1583ff;
color: #fff;
&:hover {
background: #465f85;
h6,
.des,
.meta {
@ -476,11 +416,13 @@ export default {
}
}
}
.inds {
position: absolute;
bottom: 2.5rem;
left: 3.75rem;
display: flex;
li {
width: 0.625rem;
height: 0.625rem;
@ -488,6 +430,7 @@ export default {
background: #ffffff;
border-radius: 50%;
transition: 0.2s;
&.active {
width: 1.875rem;
background: rgba(255, 255, 255, 0.3);
@ -495,21 +438,25 @@ export default {
}
}
}
h6 {
font-size: 1.2rem;
transition: 0.3s;
}
.des {
margin: 1.5rem 0;
font-size: 0.88rem;
line-height: 1.3714rem;
transition: 0.3s;
}
.meta {
font-size: 0.88rem;
transition: 0.3s;
}
}
.card {
display: flex;
flex-wrap: wrap;
@ -522,25 +469,31 @@ export default {
box-shadow: 0px 0px 20px 0px rgba(176, 176, 176, 0.21);
border-radius: 6px;
transition: 0.3s;
&:hover {
transform: scale(1.05);
}
&:last-child {
margin-right: 0;
}
}
.pic {
width: 100%;
height: auto;
object-fit: cover;
}
.texts {
padding: 2rem 1.5rem;
}
.meta {
font-size: 0.88rem;
color: #666;
}
.des {
height: 3.7rem;
margin: 10px 0;
@ -551,10 +504,12 @@ export default {
line-height: 1.7rem;
-webkit-line-clamp: 2;
}
.arrow {
width: 2.25rem;
}
}
.more {
width: 23.375rem;
margin: 3.625rem auto 0;
@ -566,29 +521,36 @@ export default {
border: 2px solid #2b6cef;
cursor: pointer;
}
.shop-shows {
display: flex;
.left {
width: 41.25rem;
margin-right: 1.25rem;
background-color: #fff;
cursor: pointer;
overflow: hidden;
.pic {
transition: 0.3s;
height: auto;
object-fit: cover;
&:hover {
transform: scale(1.05);
}
}
.texts {
padding: 2rem 1.5rem;
}
h6 {
font-size: 1.2rem;
color: #272727;
}
.des {
margin-top: 10px;
font-size: 0.88rem;
@ -596,13 +558,16 @@ export default {
line-height: 1.714rem;
}
}
.right {
width: 60%;
overflow: hidden;
}
.show-card {
display: flex;
margin-bottom: 1.25rem;
li {
position: relative;
height: auto;
@ -613,15 +578,18 @@ export default {
margin-right: 1.375rem;
}
}
.pic {
width: 25rem;
height: 12.3125rem;
transition: 0.3s;
object-fit: cover;
&:hover {
transform: scale(1.05);
}
}
.text {
position: absolute;
bottom: 0;
@ -637,31 +605,38 @@ export default {
box-shadow: 0px 0px 30px 0px rgba(48, 48, 48, 0.08);
}
}
.card-list {
padding: 1.5rem 1.3rem;
background-color: #fff;
li {
display: inline-flex;
align-items: center;
margin-bottom: 0.9rem;
transition: 0.3s;
&:hover {
transform: scale(1.05);
}
&:last-child {
margin-bottom: 0;
}
}
.pic {
width: 8rem;
height: auto;
margin-right: 1.5rem;
object-fit: cover;
}
.texts {
width: calc(100% - 15rem);
margin-right: 3.5rem;
}
h6 {
margin-bottom: 10px;
font-size: 1rem;
@ -672,6 +647,7 @@ export default {
text-overflow: ellipsis;
overflow: hidden;
}
.des {
font-size: 0.7rem;
color: #666;
@ -679,44 +655,54 @@ export default {
text-shadow: 0px 0px 30px rgba(48, 48, 48, 0.08);
-webkit-line-clamp: 2;
}
.arrow {
width: 2rem;
}
}
}
.conference {
background: #072947;
.b-title,
.intro {
color: #fff;
}
.shows {
display: flex;
}
.left {
width: 44.875rem;
margin-right: 20px;
overflow: hidden;
cursor: pointer;
.pic {
transition: 0.3s;
height: auto;
object-fit: cover;
&:hover {
transform: scale(1.05);
}
}
.texts {
display: flex;
padding: 3.78rem 1.5rem;
background-color: #fff;
}
.meta {
padding: 0.5714rem 1.314rem 0.5714rem 0;
margin-right: 1.828rem;
text-align: center;
border-right: 1px solid #ddd;
}
.date {
font-size: 2.5714rem;
font-family: DINAlternate-Bold, DINAlternate;
@ -724,15 +710,18 @@ export default {
color: #1f1f1f;
line-height: 2.9714rem;
}
.year {
font-size: 0.9142rem;
white-space: nowrap;
color: #666;
}
h6 {
font-size: 1.1428rem;
color: #272727;
}
.des {
margin-top: 10px;
font-size: 0.8rem;
@ -740,8 +729,10 @@ export default {
line-height: 1.3714rem;
}
}
.card-list {
width: 50%;
li {
display: flex;
padding: 0.8rem;
@ -751,38 +742,47 @@ export default {
align-items: center;
transition: 0.3s;
height: 9rem;
&:last-child {
margin-bottom: 0;
}
&:hover {
transform: translateX(20px);
}
}
.pic {
width: 10rem;
height: auto;
margin-right: 1.5rem;
object-fit: cover;
}
.texts {
width: calc(100% - 11.5rem);
}
h6 {
margin-bottom: 5px;
font-size: 1rem;
color: #333;
@include ellipsis();
}
.text {
display: flex;
align-items: center;
&:last-child {
margin-bottom: 0;
}
span {
@include ellipsis();
}
}
.icon {
margin-right: 5px;
}
@ -794,17 +794,21 @@ export default {
overflow-x: scroll;
display: -webkit-box;
}
.shop-shows {
.left {
width: 50%;
}
.right {
width: 48%;
}
.card-list {
.pic {
margin-right: 1rem;
}
.texts {
width: calc(100% - 11rem);
margin-right: 1rem;
@ -812,56 +816,72 @@ export default {
}
}
}
@media (max-width: 640px) {
.block {
padding: 50px 0;
.inner {
.more {
width: 100%;
margin: 20px auto 0;
}
.news-banner {
flex-direction: column;
img {
width: 100%;
}
.right {
margin-top: 10px;
width: 100%;
.inds {
left: 50%;
margin-left: -43px;
}
}
}
.card {
flex-direction: column;
.wow {
width: 95%;
margin: 20px auto;
}
}
.b-title {
font-size: 20px;
}
.intro {
font-size: 15px;
margin-bottom: 50px;
}
}
}
.shop-shows {
flex-direction: column;
.left {
width: 100%;
}
.right {
width: 100%;
margin: 20px auto;
.show-card {
flex-direction: column;
li {
width: 100%;
.pic {
width: 100%;
}
@ -869,17 +889,21 @@ export default {
}
}
}
.conference {
.shows {
flex-direction: column;
}
.left {
width: 100%;
margin-right: 0;
}
.card-list {
width: 100%;
margin-top: 20px;
.text {
margin-bottom: 4px;
}

@ -1,9 +1,7 @@
<template>
<div class="wrap p-b-30">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,17 +10,12 @@
<div class="org">
<div class="left">
<h6>{{ modules[1].form.title }}</h6>
<p class="text"
v-html="modules[1].form.des"></p>
<p class="text" v-html="modules[1].form.des"></p>
</div>
<img class="pic"
src="https://new.iasf.ac.cn/images/overviewSetup/1.png"
alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/overviewSetup/1.png" alt="">
</div>
<div class="lg-bg">
<el-image style="width: 100%;"
:src="modules[2].form.pic"
:preview-src-list="[modules[2].form.pic]">
<el-image style="width: 100%;" :src="modules[2].form.pic" :preview-src-list="[modules[2].form.pic]">
</el-image>
</div>
</div>
@ -69,6 +62,7 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.org {
display: flex;
justify-content: space-between;
@ -78,52 +72,64 @@ export default {
margin: 0 auto 50px;
background: #fcfcfc;
border-radius: 160px;
.left {
width: 705px;
}
h6 {
font-size: 1.4rem;
font-family: AlimamaShuHeiTi-Bold, AlimamaShuHeiTi;
font-weight: bold;
color: #333;
}
.text {
margin-top: 10px;
font-size: 1rem;
color: #020202;
line-height: 2rem;
}
.pic {
width: 320px;
height: 282px;
}
}
.lg-bg {
width: 1200px;
margin: 0 auto;
}
@media (max-width: 1300px) {
.org {
width: 100%;
padding: 15px;
.left {
width: 60%;
}
.pic {
width: 30%;
height: auto;
}
}
.lg-bg {
width: 85%;
}
}
@media (max-width: 980px) {
.org {
flex-direction: column;
.pic {
display: none;
}
.left {
width: 100%;
}

@ -1,60 +1,44 @@
<template>
<div class="wrap">
<div class="single-banner">
<img class="banner-img"
:src="modules[0].form.pic"
alt="" />
<img class="banner-img" :src="modules[0].form.pic" alt="" />
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
</div>
<div class="block history gray">
<div :class="['inner', {'cursor-pointer': isLink(modules[1].form.link.linkName)}]"
<div :class="['inner', { 'cursor-pointer': isLink(modules[1].form.link.linkName) }]"
@click="openLink(modules[1].form)">
<div class="texts wow fadeInDown"
data-wow-delay="0.5s">
<div class="texts wow fadeInDown" data-wow-delay="0.5s">
<div class="left">
<h2 v-html="modules[1].form.title"></h2>
<div class="line"></div>
<div class="des"
v-html="modules[1].form.des"></div>
<div class="des" v-html="modules[1].form.des"></div>
</div>
<img class="bg"
width="562"
height="418"
:src="modules[1].form.pic"
alt="">
<img class="bg" width="562" height="418" :src="modules[1].form.pic" alt="">
</div>
</div>
</div>
<div class="block">
<div class="inner">
<div :class="['core', {'cursor-pointer': isLink(modules[2].form.link.linkName)}]"
<div :class="['core', { 'cursor-pointer': isLink(modules[2].form.link.linkName) }]"
@click="openLink(modules[2].form)">
<img :src="modules[2].form.pic"
alt=""
class="pic">
<img :src="modules[2].form.pic" alt="" class="pic">
<div class="texts">
<div class="core-title"
v-html="modules[2].form.title"></div>
<div class="core-title" v-html="modules[2].form.title"></div>
<div class="line"></div>
<div class="text"
v-html="modules[2].form.des"></div>
<div class="text" v-html="modules[2].form.des"></div>
</div>
</div>
<div :class="['core', {'cursor-pointer': isLink(modules[3].form.link.linkName)}]"
<div :class="['core', { 'cursor-pointer': isLink(modules[3].form.link.linkName) }]"
@click="openLink(modules[3].form)">
<img :src="modules[3].form.pic"
alt=""
class="pic">
<img :src="modules[3].form.pic" alt="" class="pic">
<div class="texts">
<div class="core-title"
v-html="modules[3].form.title"></div>
<div class="core-title" v-html="modules[3].form.title"></div>
<div class="line"></div>
<div class="text"
v-html="modules[3].form.des"></div>
<div class="text" v-html="modules[3].form.des"></div>
</div>
</div>
</div>
@ -63,53 +47,35 @@
<div class="block gray fac">
<div class="inner">
<div class="event">
<img src="https://new.iasf.ac.cn/images/overview/16.png"
alt=""
class="pic">
<img src="https://www.iasf.ac.cn/images/overview/16.png" alt="" class="pic">
<div class="texts">
<h6 v-html="modules[4].form.title"></h6>
<p class="en">{{ modules[4].form.subTitle }}</p>
<div class="text"
v-html="modules[4].form.des"></div>
<img v-if="isLink(modules[4].form.link.linkName)"
class="arrow"
src="@/assets/images/arrow.png"
alt=""
<div class="text" v-html="modules[4].form.des"></div>
<img v-if="isLink(modules[4].form.link.linkName)" class="arrow" src="@/assets/images/arrow.png" alt=""
@click="openLink(modules[4].form)">
</div>
</div>
<ul class="l-card">
<li :class="{'cursor-pointer': isLink(modules[5].form.link.linkName)}"
@click="openLink(modules[5].form)">
<img :src="modules[5].form.pic"
alt=""
class="pic" />
<li :class="{ 'cursor-pointer': isLink(modules[5].form.link.linkName) }" @click="openLink(modules[5].form)">
<img :src="modules[5].form.pic" alt="" class="pic" />
<div class="texts">
<h6>{{ modules[5].form.title }}</h6>
<div class="text"
v-html="modules[5].form.des"></div>
<div class="text" v-html="modules[5].form.des"></div>
</div>
</li>
<li :class="{'cursor-pointer': isLink(modules[6].form.link.linkName)}"
@click="openLink(modules[6].form)">
<img :src="modules[6].form.pic"
alt=""
class="pic" />
<li :class="{ 'cursor-pointer': isLink(modules[6].form.link.linkName) }" @click="openLink(modules[6].form)">
<img :src="modules[6].form.pic" alt="" class="pic" />
<div class="texts">
<h6>{{ modules[6].form.title }}</h6>
<div class="text"
v-html="modules[6].form.des"></div>
<div class="text" v-html="modules[6].form.des"></div>
</div>
</li>
<li :class="{'cursor-pointer': isLink(modules[7].form.link.linkName)}"
@click="openLink(modules[7].form)">
<img :src="modules[7].form.pic"
alt=""
class="pic" />
<li :class="{ 'cursor-pointer': isLink(modules[7].form.link.linkName) }" @click="openLink(modules[7].form)">
<img :src="modules[7].form.pic" alt="" class="pic" />
<div class="texts">
<h6>{{ modules[7].form.title }}</h6>
<div class="text"
v-html="modules[7].form.des"></div>
<div class="text" v-html="modules[7].form.des"></div>
</div>
</li>
</ul>
@ -117,20 +83,13 @@
</div>
<div class="block scan gray">
<h2 class="b-title wow fadeInUp hide-bd"
v-html="modules[8].form.title"></h2>
<p class="intro wow fadeInUp"
data-wow-delay="0.5s">{{ modules[8].form.des }}</p>
<h2 class="b-title wow fadeInUp hide-bd" v-html="modules[8].form.title"></h2>
<p class="intro wow fadeInUp" data-wow-delay="0.5s">{{ modules[8].form.des }}</p>
<div class="inner scan-inner">
<div class="left">
<template v-for="(item, i) in modules[9].list">
<div v-if="item.isEnable"
class="line"
:key="i">
<img v-if="item.pic"
:src="item.pic"
alt=""
class="icon">
<div v-if="item.isEnable" class="line" :key="i">
<img v-if="item.pic" :src="item.pic" alt="" class="icon">
<p class="text">{{ item.title }}</p>
</div>
</template>
@ -149,9 +108,7 @@
</li>
</ul>
</div>
<img :src="modules[13].form.pic"
alt=""
class="pic" />
<img :src="modules[13].form.pic" alt="" class="pic" />
</div>
</div>
</div>
@ -199,11 +156,13 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.history {
h2 {
font-size: 1rem;
color: #333;
}
.texts {
display: flex;
justify-content: space-between;
@ -212,42 +171,51 @@ export default {
background-color: #fff;
border-radius: 6.25rem 0px 0px 0px;
transition: 0.3s;
&:hover {
transform: scale(1.05);
}
}
.left {
width: 43.4375rem;
}
.line {
width: 53px;
height: 3px;
margin: 18px 0;
background: #0280f1;
}
.des {
font-size: 0.9rem;
color: #181818;
line-height: 31px;
-webkit-line-clamp: 6;
}
.bg {
margin: -115px -80px 0 30px;
border-top-right-radius: 40px;
}
}
.core {
position: relative;
margin-bottom: 40px;
&:last-child {
.texts {
left: 40px;
right: auto;
}
}
.pic {
width: 100%;
}
.texts {
position: absolute;
top: 80px;
@ -255,10 +223,12 @@ export default {
width: 500px;
color: #fff;
}
.core-title {
font-size: 1.4rem;
font-family: PingFangSC-Medium, PingFang SC;
}
.line {
width: 136px;
height: 3px;
@ -266,17 +236,21 @@ export default {
background: #ffffff;
opacity: 0.56;
}
.text {
font-size: 1rem;
line-height: 1.6;
}
}
.fac {
.event {
position: relative;
.pic {
width: 100%;
}
.texts {
position: absolute;
top: 70px;
@ -284,40 +258,48 @@ export default {
bottom: 70px;
left: 60px;
}
h6 {
position: relative;
font-size: 2.2rem;
font-family: PingFangSC-Medium, PingFang SC;
color: #333;
}
.en {
margin-top: -30px;
font-size: 2rem;
font-family: AppleSystemUIFont;
color: #e4e4e4;
}
.text {
margin: 15px 0;
font-size: 1rem;
color: #333;
}
}
.l-card {
display: flex;
margin-top: 20px;
li {
position: relative;
width: calc((100% - 40px) / 3);
height: 359px;
margin-right: 20px;
&:last-child {
margin-right: 0;
}
}
.pic {
width: 100%;
height: 100%;
}
.texts {
position: absolute;
top: 0;
@ -328,11 +310,13 @@ export default {
color: #fff;
background-color: rgba(0, 0, 0, 0.5);
}
h6 {
margin-bottom: 15px;
font-size: 1.6rem;
font-family: PingFangSC-Medium, PingFang SC;
}
.text {
font-size: 1rem;
font-family: PingFangSC-Medium, PingFang SC;
@ -341,23 +325,28 @@ export default {
}
}
}
.scan {
.scan-inner {
display: flex;
}
.left {
width: 45%;
margin-right: 80px;
}
.line {
display: flex;
align-items: center;
margin-bottom: 30px;
.icon {
width: 50px;
height: 50px;
margin-right: 20px;
}
.text {
font-size: 1rem;
font-family: PingFangSC-Medium, PingFang SC;
@ -365,10 +354,12 @@ export default {
line-height: 1.6;
}
}
.total {
display: flex;
justify-content: space-between;
margin-top: 50px;
.num {
margin-bottom: 10px;
font-size: 2rem;
@ -376,11 +367,13 @@ export default {
font-weight: 800;
color: #1583ff;
}
.text {
font-size: 1rem;
color: #333;
}
}
.pic {
width: 50%;
// object-fit: cover;
@ -394,14 +387,17 @@ export default {
}
}
}
@media (max-width: 1400px) {
.history {
.texts {
flex-direction: column;
}
.left {
width: 100%;
}
.bg {
width: auto;
max-width: 100%;
@ -409,18 +405,22 @@ export default {
margin: 20px 0 0 0;
}
}
.scan {
.scan-inner {
flex-direction: column;
}
.left {
width: 100%;
}
.pic {
width: 100%;
margin-top: 2rem;
}
}
.fac {
.event {
.texts {
@ -430,6 +430,7 @@ export default {
}
}
}
@media (max-width: 920px) {
.core {
.texts {
@ -439,12 +440,15 @@ export default {
width: auto;
}
}
.scan {
padding: 20px;
}
.fac {
.l-card {
flex-direction: column;
li {
width: 100%;
margin-bottom: 1rem;
@ -452,23 +456,28 @@ export default {
}
}
}
@media (max-width: 750px) {
.hide-bd:after {
display: none;
}
.block {
padding: 50px 0;
}
.core {
.texts {
position: static;
padding: 20px;
color: #333;
}
.line {
background: #333;
}
}
.fac {
.event {
.pic {

@ -1,9 +1,7 @@
<template>
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -11,45 +9,33 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
<div class="block history">
<div class="inner">
<h2 class="wow fadeInLeft"
v-html="modules[1].form.title"></h2>
<h2 class="wow fadeInLeft" v-html="modules[1].form.title"></h2>
<p class="en">{{ modules[1].form.des }}</p>
<div v-if="modules[2].list.length"
class="event">
<div v-if="modules[2].list.length" class="event">
<ul class="time">
<template v-for="(item, i) in modules[2].list">
<li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
<li v-if="item.isEnable" :key="i" :class="{ active: curYear == i }" @click="yearClick(i)">{{ item.title }}
</li>
</template>
</ul>
<div v-if="modules[2].list[curYear]"
class="right">
<div v-if="modules[2].list[curYear]" class="right">
<h6 class="year">{{ modules[2].list[curYear].title }}</h6>
<ul class="list">
<template v-for="(e, j) in modules[2].list[curYear].list">
<li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
<li v-if="e.isEnable" :key="j" :class="{ 'cursor-pointer': isLink(e.link.linkName) }"
@click="openLink(e)">
<div class="texts">
<p class="date">{{ e.title }}</p>
<p class="text">{{ e.des }}</p>
</div>
<div class="pic-wrap">
<el-image v-if="e.pic"
class="pic"
:src="e.pic"
:preview-src-list="[e.pic]">
<el-image v-if="e.pic" class="pic" :src="e.pic" :preview-src-list="[e.pic]">
</el-image>
</div>
</li>
@ -89,18 +75,22 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.wrap {
background: url(https://new.iasf.ac.cn/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(https://new.iasf.ac.cn/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
background: url(https://www.iasf.ac.cn/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(https://www.iasf.ac.cn/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
}
.single-banner {
.texts {
top: auto !important;
bottom: 2rem;
}
}
.history {
padding: 3.85rem 0;
h2 {
position: relative;
font-size: 1.75rem;
@ -108,6 +98,7 @@ export default {
font-weight: 600;
color: #1c1c1c;
}
.en {
margin: 0 0 2rem;
font-size: 1.75rem;
@ -116,15 +107,18 @@ export default {
color: #e3e3e3;
}
}
.event {
display: flex;
justify-content: center;
.time {
width: 12.5rem;
padding-right: 0.625rem;
margin-right: 1.25rem;
flex-shrink: 1;
border-right: 1px solid #ddd;
li {
display: flex;
justify-content: center;
@ -137,24 +131,28 @@ export default {
color: #666;
box-shadow: inset 0px -1px 0px 0px #dddddd;
cursor: pointer;
&.active {
font-weight: 800;
color: #1a81f4;
background: linear-gradient(90deg, #ffffff 0%, #f3f8ff 100%);
&:before {
content: '';
width: 18px;
height: 18px;
background: url(https://new.iasf.ac.cn/images/overviewDevHistory/3.png) no-repeat;
background: url(https://www.iasf.ac.cn/images/overviewDevHistory/3.png) no-repeat;
margin-right: 20px;
}
}
}
}
.right {
// width: 1000px;
flex-grow: 1;
}
.year {
margin: 0 0 1rem 1rem;
font-size: 2.35rem;
@ -162,8 +160,10 @@ export default {
font-weight: 800;
color: #1a81f4;
}
.list {
border-top: 1px solid #ddd;
li {
display: flex;
justify-content: space-between;
@ -171,9 +171,11 @@ export default {
padding: 1.5rem;
border-bottom: 1px solid #ddd;
}
.texts {
width: 31.25rem;
}
.date {
width: 31.25rem;
margin-bottom: 0.75rem;
@ -188,10 +190,12 @@ export default {
overflow: hidden;
word-break: break-all;
}
.text {
font-size: 1.08rem;
color: #333;
@include mul-ellipsis(3);
&:before {
content: '';
display: inline-block;
@ -202,11 +206,13 @@ export default {
transform: rotate(45deg);
}
}
.pic-wrap {
width: 17.5rem;
height: 9.75rem;
text-align: center;
}
.pic {
// width: 17.5rem;
height: 100%;
@ -217,6 +223,7 @@ export default {
@media (max-width: 1200px) {
.tab-content {
width: 90%;
span {
font-size: 1.35rem;
}
@ -224,38 +231,49 @@ export default {
.block {
padding: 1.25rem 0;
.inner {
width: 90%;
h2 {
font-size: 1.5rem;
}
p {
font-size: 1rem;
margin: 10px 0 1.25rem;
}
.event {
flex-direction: column;
.time {
width: 100%;
li {
width: 100%;
justify-content: flex-start;
}
}
.right {
margin-top: 1.25rem;
width: 100%;
h6 {
font-size: 2rem;
}
.list {
li {
padding: 1.25rem;
flex-direction: column;
align-items: flex-start;
.texts {
width: 100%;
}
.pic {
width: 100%;
height: auto;

@ -1,10 +1,7 @@
<template>
<div class="wrap"
v-if="modules.length>=1">
<div class="wrap" v-if="modules.length >= 1">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -12,35 +9,26 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
<div class="tab-content">
<div class="inner intro">
<img class="pic"
:src="modules[1].form.pic"
alt="">
<img class="pic" :src="modules[1].form.pic" alt="">
<div class="right">
<div class="relative">
<h6 v-html="modules[1].form.title"></h6>
<img class="title-bg"
src="https://new.iasf.ac.cn/images/overviewIntro/2.png"
alt="">
<img class="title-bg" src="https://www.iasf.ac.cn/images/overviewIntro/2.png" alt="">
</div>
<div class="text"
v-html="modules[1].form.des"></div>
<div class="text" v-html="modules[1].form.des"></div>
</div>
</div>
<div class="intro-bg"
v-if="modules[2]">
<div class="intro-bg" v-if="modules[2]">
<div class="mask"></div>
<div class="texts">
<h6>{{ modules[2].form.title }}</h6>
<div class="des"
v-html="modules[2].form.des"></div>
<div class="des" v-html="modules[2].form.des"></div>
</div>
</div>
</div>
@ -79,38 +67,47 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.wrap {
background: url(../../assets/images/survey2.png) (bottom right) / auto no-repeat;
}
.single-banner {
.texts {
top: auto !important;
bottom: 2rem;
}
}
.tab-content {
padding-top: 3.85rem;
.intro {
display: flex;
align-items: center;
margin-bottom: 5.5rem;
.pic {
width: 49%;
margin-right: 2%;
}
.right {
width: 49%;
}
h6 {
position: relative;
font-size: 1.36rem;
color: #333;
}
.title-bg {
position: absolute;
top: -2rem;
left: -1rem;
}
.text {
margin-top: 2rem;
font-size: 1rem;
@ -118,6 +115,7 @@ export default {
line-height: 2;
}
}
.intro-bg {
position: relative;
height: auto;
@ -125,7 +123,8 @@ export default {
padding-bottom: 2rem;
color: #fff;
text-align: center;
background: url(https://new.iasf.ac.cn/images/overviewIntro/3.png) 0 0/100% 100% no-repeat;
background: url(https://www.iasf.ac.cn/images/overviewIntro/3.png) 0 0/100% 100% no-repeat;
.mask {
position: absolute;
top: 0;
@ -135,26 +134,31 @@ export default {
content: '';
background-color: rgba(0, 0, 0, 0.3);
}
.texts {
position: relative;
}
h6 {
margin-bottom: 1.5rem;
font-size: 1.6rem;
font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
font-weight: 800;
}
.des {
font-size: 1.2rem;
}
}
}
.ads {
position: fixed;
top: 30%;
right: 1%;
padding: 20px;
animation: move 20s linear infinite alternate;
li {
display: flex;
align-items: center;
@ -163,6 +167,7 @@ export default {
font-weight: 600;
font-size: 16px;
color: #1583ff;
&:before {
content: '';
width: 4px;
@ -173,15 +178,18 @@ export default {
}
}
}
@keyframes move {
0% {
top: 30%;
right: 1%;
}
50% {
top: 40%;
right: 40%;
}
100% {
top: 90%;
right: 90%;
@ -193,27 +201,34 @@ export default {
width: 90%;
margin: auto;
padding-top: 1.25rem;
.intro {
flex-direction: column;
.pic {
width: 100%;
}
}
.intro-bg {
padding-top: 3rem;
.texts {
h6 {
font-size: 1.6rem;
}
}
}
.right {
width: 100% !important;
margin-top: 1.25rem;
.text {
margin-top: 1.25rem;
}
}
span {
font-size: 1.35rem;
}

@ -1,9 +1,7 @@
<template>
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -11,9 +9,7 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{ active: item.id == active }" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -21,17 +17,12 @@
<div class="org">
<div class="left">
<h6 v-html="modules[1].form.title"></h6>
<p class="text"
v-html="modules[1].form.des"></p>
<p class="text" v-html="modules[1].form.des"></p>
</div>
<img class="pic"
src="https://new.iasf.ac.cn/images/overviewSetup/1.png"
alt="">
<img class="pic" src="https://www.iasf.ac.cn/images/overviewSetup/1.png" alt="">
</div>
<div class="lg-bg">
<el-image style="width: 100%;"
:src="modules[2].form.pic"
:preview-src-list="[modules[2].form.pic]">
<el-image style="width: 100%;" :src="modules[2].form.pic" :preview-src-list="[modules[2].form.pic]">
</el-image>
</div>
@ -62,15 +53,18 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import '../../styles/page/page.scss';
.single-banner {
.texts {
top: auto !important;
bottom: 2rem;
}
}
.tab-content {
padding: 77px 0;
}
.org {
display: flex;
justify-content: space-between;
@ -80,46 +74,56 @@ export default {
margin: 0 auto 50px;
background: #fcfcfc;
border-radius: 160px;
.left {
width: 705px;
}
h6 {
font-size: 1.4rem;
font-family: AlimamaShuHeiTi-Bold, AlimamaShuHeiTi;
font-weight: bold;
color: #333;
}
.text {
margin-top: 10px;
font-size: 1rem;
color: #020202;
line-height: 2rem;
}
.pic {
width: 320px;
height: 282px;
object-fit: cover;
}
}
.lg-bg {
width: 1200px;
margin: 0 auto;
}
@media (max-width: 1200px) {
.tab-content {
padding: 20px 0;
.org {
width: 95%;
padding: 15px;
flex-direction: column;
.pic {
display: none;
}
.left {
width: 100%;
}
}
}
.lg-bg {
width: 90%;
}

@ -22,16 +22,16 @@
<ul class="teams">
<li v-for="(item, i) in articles" :key="i" @click="toArtice(item, modules[1].form)">
<div class="line">
<img src="https://new.iasf.ac.cn/images/researchTeam/3.png" alt="" class="icon">
<img src="https://www.iasf.ac.cn/images/researchTeam/3.png" alt="" class="icon">
<span class="bold">{{ item.title }}</span>
<span class="val">/ {{ item.post }}</span>
</div>
<div class="line">
<img src="https://new.iasf.ac.cn/images/researchTeam/4.png" alt="" class="icon">
<img src="https://www.iasf.ac.cn/images/researchTeam/4.png" alt="" class="icon">
<span class="text">专业 {{ item.major }}</span>
</div>
<div class="line">
<img src="https://new.iasf.ac.cn/images/researchTeam/5.png" alt="" class="icon">
<img src="https://www.iasf.ac.cn/images/researchTeam/5.png" alt="" class="icon">
<span class="text">荣誉 {{ item.honor }}</span>
</div>
</li>
@ -208,7 +208,7 @@ export default {
width: calc((100% - 10px) / 2);
padding: 20px 30px;
margin: 0 10px 10px 0;
background: url(https://new.iasf.ac.cn/images/researchTeam/2.png) 0 0 / cover no-repeat;
background: url(https://www.iasf.ac.cn/images/researchTeam/2.png) 0 0 / cover no-repeat;
cursor: pointer;
&:nth-child(even) {

@ -68,7 +68,7 @@ export default {
@import '../../styles/page/page.scss';
.block {
background: url(https://new.iasf.ac.cn/images/speech/2.png) no-repeat;
background: url(https://www.iasf.ac.cn/images/speech/2.png) no-repeat;
}
.inner {

@ -36,8 +36,6 @@ input,
textarea,
p,
blockquote,
th,
td,
hr,
button,
article,

Loading…
Cancel
Save