Compare commits

...

7 Commits

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

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

@ -10,17 +10,18 @@
<div class="left"> <div class="left">
<h2>{{ form.title }}</h2> <h2>{{ form.title }}</h2>
<div class="meta">{{ $t('column.time') }}{{ form.activityStartTime }}</div> <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.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.offlineLocation" class="meta">{{ $t('column.offline') }}{{ form.offlineLocation }}</div>
<div v-if="form.keynoteSpeaker" class="meta">{{ $t('column.speaker') }}{{ form.keynoteSpeaker }}</div> <div v-if="form.keynoteSpeaker" class="meta">{{ $t('column.speaker') }}{{ form.keynoteSpeaker }}</div>
<div v-if="form.lectureSeries" class="meta">{{ $t('column.series') }}{{ form.lectureSeries }}</div> <div v-if="form.lectureSeries" class="meta">{{ $t('column.series') }}{{ form.lectureSeries }}</div>
<template v-if="form.eventProfile">
<h6>{{ $t('column.ActivityIntroduction') }}</h6> <h6>{{ $t('column.ActivityIntroduction') }}</h6>
<div class="profile"> {{ form.eventProfile }}</div> <div class="profile"> {{ form.eventProfile }}</div>
</template>
<h6>{{ $t('column.content') }}</h6> <h6>{{ $t('column.content') }}</h6>
<div v-html="form.mainBody"></div> <div class="des" v-html="form.mainBody"></div>
<div v-if="form.fileList && form.fileList.length" class="annex"> <div v-if="form.fileList && form.fileList.length" class="annex">
<h6>{{ $t('column.attachmentDownload') }}</h6> <h6>{{ $t('column.attachmentDownload') }}</h6>
<ul class="files"> <ul class="files">
@ -178,6 +179,24 @@ export default {
img { img {
max-width: 100%; max-width: 100%;
} }
ul {
padding-left: 40px;
list-style: disc;
li {
list-style: inherit;
}
}
ol {
padding-left: 40px;
list-style: decimal;
li {
list-style: inherit;
}
}
} }
.annex { .annex {

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

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

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

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

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

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

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

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

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

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

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

File diff suppressed because it is too large Load Diff

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

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

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

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

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

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

@ -22,16 +22,16 @@
<ul class="teams"> <ul class="teams">
<li v-for="(item, i) in articles" :key="i" @click="toArtice(item, modules[1].form)"> <li v-for="(item, i) in articles" :key="i" @click="toArtice(item, modules[1].form)">
<div class="line"> <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="bold">{{ item.title }}</span>
<span class="val">/ {{ item.post }}</span> <span class="val">/ {{ item.post }}</span>
</div> </div>
<div class="line"> <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> <span class="text">专业 {{ item.major }}</span>
</div> </div>
<div class="line"> <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> <span class="text">荣誉 {{ item.honor }}</span>
</div> </div>
</li> </li>
@ -208,7 +208,7 @@ export default {
width: calc((100% - 10px) / 2); width: calc((100% - 10px) / 2);
padding: 20px 30px; padding: 20px 30px;
margin: 0 10px 10px 0; 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; cursor: pointer;
&:nth-child(even) { &:nth-child(even) {

@ -68,7 +68,7 @@ export default {
@import '../../styles/page/page.scss'; @import '../../styles/page/page.scss';
.block { .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 { .inner {

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

Loading…
Cancel
Save