yujialong 2 years ago
parent aaedf6771a
commit 297928c1fd
  1. 18289
      package-lock.json
  2. 2
      package.json
  3. 11
      public/index.html
  4. 54
      src/layouts/navbar/index.vue
  5. 246
      src/pages/deviceIntroBeam/index.vue
  6. 400
      src/pages/deviceIntroLayout/index.vue
  7. 111
      src/pages/deviceIntroLinear/index.vue
  8. 130
      src/pages/estate/event/index.vue
  9. 267
      src/pages/estate/index/index.vue
  10. 201
      src/pages/estate/location/index.vue
  11. 116
      src/pages/estate/orgSetup/index.vue
  12. 88
      src/pages/estate/survey/index.vue
  13. 337
      src/pages/overviewDevHistory/index.vue
  14. 177
      src/pages/overviewSetup/index.vue
  15. 118
      src/styles/page/page.scss

18289
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -19,6 +19,7 @@
"jspdf": "^2.4.0", "jspdf": "^2.4.0",
"lru-cache": "^7.14.1", "lru-cache": "^7.14.1",
"mavon-editor": "^2.9.1", "mavon-editor": "^2.9.1",
"node-sass": "^4.14.1",
"vue": "^2.6.14", "vue": "^2.6.14",
"vue-animate-number": "^0.4.2", "vue-animate-number": "^0.4.2",
"vue-cropperjs": "^3.0.0", "vue-cropperjs": "^3.0.0",
@ -36,7 +37,6 @@
"browserslist": "^4.17.5", "browserslist": "^4.17.5",
"caniuse-lite": "^1.0.30001271", "caniuse-lite": "^1.0.30001271",
"element-theme-chalk": "^2.15.6", "element-theme-chalk": "^2.15.6",
"node-sass": "^4.14.0",
"sass-loader": "^8.0.2", "sass-loader": "^8.0.2",
"vue-template-compiler": "^2.6.14" "vue-template-compiler": "^2.6.14"
} }

@ -1,12 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="keywords" content="粒子研究院"> <meta name="keywords" content="粒子研究院" />
<meta name="description" content="粒子研究院" /> <meta name="description" content="粒子研究院" />
<meta name="referrer" content="no-referrer"> <meta name="referrer" content="no-referrer" />
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<title>粒子研究院</title> <title>粒子研究院</title>
</head> </head>
<body> <body>
@ -16,5 +16,4 @@
<div id="app"></div> <div id="app"></div>
<!-- built files will be auto injected --> <!-- built files will be auto injected -->
</body> </body>
</html> </html>

@ -1,9 +1,22 @@
<template> <template>
<div> <div>
<el-menu :class="['nav', {home: isHome, estate: isEstate}]" ref="elMenu" :key="menuRefresh" :mode="$store.getters.getModelType ? 'horizontal' : 'vertical' " :background-color="bgColor" :text-color="textColor" :active-text-color="activeTextColor" @open="jump" @select="jump" :default-active="String(active)"> <el-menu :class="['nav', {home: isHome, estate: isEstate,changing: !showMenu}]"
ref="elMenu"
:key="menuRefresh"
:mode="$store.getters.getModelType ? 'horizontal' : 'vertical' "
:background-color="bgColor"
:text-color="textColor"
:active-text-color="activeTextColor"
@open="jump"
@select="jump"
:default-active="String(active)">
<menuTree :menuList="menus" /> <menuTree :menuList="menus" />
<el-submenu :popper-class="isHome ? 'home-menu-popup' : ''" v-show="showMoreBtns" index="522222" > <el-submenu :popper-class="isHome ? 'home-menu-popup' : ''"
<template slot="title"><div class="moreBtns">{{ $t('column.more') }}</div></template> v-show="showMoreBtns"
index="522222">
<template slot="title">
<div class="moreBtns">{{ $t('column.more') }}</div>
</template>
<menuTree :menuList="otherMenus" /> <menuTree :menuList="otherMenus" />
</el-submenu> </el-submenu>
</el-menu> </el-menu>
@ -20,12 +33,14 @@ export default {
mixins: [mixins], mixins: [mixins],
data () { data () {
return { return {
lastHome: true,
active: this.$route.query.id, active: this.$route.query.id,
menus: [], menus: [],
bgColor: '#fff', bgColor: '#fff',
textColor: '#333', textColor: '#333',
activeTextColor: '#1583FF', activeTextColor: '#1583FF',
menuRefresh: 1, menuRefresh: 1,
showMenu: true,
toItem: {}, toItem: {},
parentId: 0, parentId: 0,
otherMenus: [], otherMenus: [],
@ -60,9 +75,9 @@ export default {
} }
}, },
mounted () { mounted () {
this.lastHome = this.isHome
this.handleColor() this.handleColor()
this.getColumn() this.getColumn()
console.log('this.$store.state.navSum=>' ,this.$store.state.navSum)
}, },
methods: { methods: {
...mapMutations('content', [ ...mapMutations('content', [
@ -114,8 +129,15 @@ export default {
// //
handleColor () { handleColor () {
const home = this.isHome const home = this.isHome
if (this.lastHome !== home) this.showMenu = false
this.bgColor = home ? 'transparent' : '#fff' this.bgColor = home ? 'transparent' : '#fff'
this.textColor = home ? '#f9f9f9' : '#333' this.textColor = home ? '#f9f9f9' : '#333'
this.lastHome !== home && this.$nextTick(() => {
setTimeout(() => {
this.showMenu = true
}, 200)
})
this.lastHome = home
// this.menuRefresh++ // this.menuRefresh++
}, },
// //
@ -132,11 +154,8 @@ export default {
}, },
// //
jump (id) { jump (id) {
console.log('id=>',id)
this.getPath(this.otherMenus, id || this.otherMenus[0].id) this.getPath(this.otherMenus, id || this.otherMenus[0].id)
this.getPath(this.menus, id || this.menus[0].id) this.getPath(this.menus, id || this.menus[0].id)
this.columnTo(this.toItem) this.columnTo(this.toItem)
this.$parent.showSearch = false this.$parent.showSearch = false
} }
@ -151,6 +170,9 @@ $height: 90px;
font-weight: bold; font-weight: bold;
padding-top: 0.2rem; padding-top: 0.2rem;
} }
.changing {
opacity: 0;
}
/deep/.nav.el-menu--horizontal { /deep/.nav.el-menu--horizontal {
display: flex; display: flex;
position: absolute; position: absolute;
@ -159,7 +181,8 @@ $height: 90px;
transform: translateX(-50%); transform: translateX(-50%);
border: 0; border: 0;
outline: none; outline: none;
.el-menu-item, .el-submenu__title { .el-menu-item,
.el-submenu__title {
height: $height; height: $height;
line-height: $height; line-height: $height;
span { span {
@ -169,7 +192,7 @@ $height: 90px;
&:hover { &:hover {
background-color: transparent !important; background-color: transparent !important;
span { span {
color: #1583FF; color: #1583ff;
} }
} }
} }
@ -189,11 +212,13 @@ $height: 90px;
.is-active { .is-active {
color: #333 !important; color: #333 !important;
} }
.active, .active .el-submenu__title { .active,
.active .el-submenu__title {
color: #1583ff !important; color: #1583ff !important;
} }
&.home { &.home {
.el-menu-item, .el-submenu__title { .el-menu-item,
.el-submenu__title {
&:hover { &:hover {
background-color: transparent !important; background-color: transparent !important;
span { span {
@ -204,7 +229,8 @@ $height: 90px;
.is-active { .is-active {
color: #f9f9f9 !important; color: #f9f9f9 !important;
} }
.active, .active .el-submenu__title { .active,
.active .el-submenu__title {
color: #fff !important; color: #fff !important;
} }
} }
@ -218,9 +244,9 @@ $height: 90px;
@media (min-width: 280px) and (max-width: 1200px) { @media (min-width: 280px) and (max-width: 1200px) {
/deep/.nav { /deep/.nav {
.el-menu-item { .el-menu-item {
padding: 0 8px;color: black !important; padding: 0 8px;
color: black !important;
} }
} }
} }
</style> </style>

@ -1,10 +1,15 @@
<template> <template>
<div class="wrap"> <div class="wrap">
<el-carousel :interval="6000" :arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" :indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> <el-carousel :interval="6000"
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list"> <template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> <el-carousel-item v-if="item.pic && item.isEnable"
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" @click="openLink(item)"> :key="i">
<img :src="item.pic" alt=""> <div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<p class="banner-name">{{ item.title }}</p> <p class="banner-name">{{ item.title }}</p>
</div> </div>
</el-carousel-item> </el-carousel-item>
@ -13,25 +18,35 @@
<div class="block share"> <div class="block share">
<h6>{{ modules[1].form.title }}</h6> <h6>{{ modules[1].form.title }}</h6>
<p class="en" v-html="modules[1].form.des"></p> <p class="en"
v-html="modules[1].form.des"></p>
<div class="sum">{{ modules[2].form.title }}</div> <div class="sum">{{ modules[2].form.title }}</div>
<div class="flex beamBox"> <div class="flex beamBox">
<div class="left"> <div class="left">
<div class="des" v-html="modules[2].form.des"></div> <div class="des"
v-html="modules[2].form.des"></div>
</div> </div>
<img class="pic" :src="modules[2].form.pic" alt=""> <img class="pic"
:src="modules[2].form.pic"
alt="">
</div> </div>
</div> </div>
<div class="intro"> <div class="intro">
<!-- <img class="pic" src="http://10.10.11.7/images/device/2.png" alt=""> --> <div class="intro-inner">
<img class="pic" src="@/assets/images/2.png" alt=""> <img class="pic"
<div class="des" v-html="modules[3].form.des"></div> :src="modules[3].form.pic"
alt="">
<div class="des"
v-html="modules[3].form.des"></div>
</div>
</div> </div>
<div class="unit"> <div class="unit">
<h6>{{ modules[4].form.title }}</h6> <h6>{{ modules[4].form.title }}</h6>
<img class="pic" :src="modules[4].form.pic" alt=""> <img class="pic"
:src="modules[4].form.pic"
alt="">
</div> </div>
</div> </div>
</template> </template>
@ -72,7 +87,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';
.wrap { .wrap {
background: url(http://10.10.11.7/images/device/4.png) bottom right/auto no-repeat; background: url(http://10.10.11.7/images/device/4.png) bottom right/auto no-repeat;
/deep/ .el-carousel { /deep/ .el-carousel {
@ -104,7 +119,7 @@ export default {
} }
.sum { .sum {
margin-top: 3rem; margin-top: 3rem;
font-size: .96rem; font-size: 0.96rem;
} }
} }
} }
@ -115,12 +130,12 @@ export default {
right: 2rem; right: 2rem;
bottom: 2.25rem; bottom: 2.25rem;
display: flex; display: flex;
font-size: .9rem; font-size: 0.9rem;
font-weight: 400; font-weight: 400;
.readio { .readio {
width: 7px; width: 7px;
height: 7px; height: 7px;
background-color: #2A2A2A; background-color: #2a2a2a;
border-radius: 50%; border-radius: 50%;
margin-right: 10px; margin-right: 10px;
margin-top: 8px; margin-top: 8px;
@ -130,14 +145,13 @@ export default {
.share { .share {
position: relative; position: relative;
width: 80%; width: 80%;
padding-left: 12%; padding-left: 14%;
.beamBox { .beamBox {
align-items: center; align-items: center;
} }
.left { .left {
min-width: 468px; width: 50%;
width: 468px; padding-right: 66px;
margin-right: 66px;
} }
h6 { h6 {
position: relative; position: relative;
@ -151,7 +165,7 @@ export default {
font-size: 2.4rem; font-size: 2.4rem;
font-family: PingFangSC-Light, PingFang SC; font-family: PingFangSC-Light, PingFang SC;
font-weight: 300; font-weight: 300;
color: #E3E3E3; color: #e3e3e3;
} }
.sum { .sum {
margin-top: 60px; margin-top: 60px;
@ -163,37 +177,40 @@ export default {
} }
.des { .des {
margin-top: 1.25rem; margin-top: 1.25rem;
font-size: .88rem; font-size: 0.88rem;
color: #333; color: #333;
line-height: 1.85rem; line-height: 1.85rem;
-webkit-line-clamp: inherit; -webkit-line-clamp: inherit;
overflow: visible; overflow: visible;
} }
.pic { .pic {
width: calc(100% - 536px); width: 50%;
margin-top: 10px; margin-top: 10px;
border-top-left-radius: 20px; border-top-left-radius: 20px;
} }
} }
.intro { .intro {
display: flex;
align-items: center;
width: 80%; width: 80%;
height: 19.65rem; height: 19.65rem;
padding-left: 12%; padding-left: 14%;
margin-bottom: 67px; margin-bottom: 67px;
background-color: #05607d; background-color: #2e4984;
.intro-inner {
display: flex;
align-items: center;
height: 100%;
}
.pic { .pic {
width: 468px; width: 50%;
height: 100%; height: 100%;
} }
.des { .des {
width: 50%;
height: 19.65rem; height: 19.65rem;
padding: 2.85rem 3rem 1rem 3rem; padding: 2.85rem 3rem 1rem 3rem;
font-size: .96rem; font-size: 0.96rem;
color: #fff; color: #fff;
line-height: 2rem; line-height: 2rem;
background: #2E4984;
-webkit-line-clamp: 7; //3 -webkit-line-clamp: 7; //3
} }
} }
@ -202,26 +219,32 @@ export default {
padding-bottom: 60px; padding-bottom: 60px;
margin: 0 auto; margin: 0 auto;
h6 { h6 {
padding-left: .93rem; padding-left: 0.93rem;
margin-bottom: .93rem; margin-bottom: 0.93rem;
font-size: .88rem; font-size: 0.88rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #2A2A2A; color: #2a2a2a;
border-left: 4px solid #1583FF; border-left: 4px solid #1583ff;
} }
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.inner{ .banner {
padding: 0 20px; height: 12rem;
width: 90% !important; padding: 6rem 0 0 2rem;
.sum{ }
line-height: 25px; .beamBox {
margin-top: 40px; .imgText {
bottom: 4rem;
right: 4rem;
} }
} }
.share {
width: 90%;
padding-left: 0;
margin: 0 auto;
}
.beamBox { .beamBox {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -231,7 +254,7 @@ export default {
width: 100%; width: 100%;
} }
.des { .des {
-webkit-line-clamp: 100 -webkit-line-clamp: 100;
} }
.pic { .pic {
margin-top: 10px; margin-top: 10px;
@ -240,146 +263,27 @@ export default {
} }
} }
.intro { .intro {
width: 90%;
padding: 1rem 0;
height: auto; height: auto;
.intro-inner {
flex-direction: column; flex-direction: column;
}
.pic { .pic {
width: 100%; width: 80%;
} }
.des { .des {
-webkit-line-clamp: 100 width: 80%;
height: auto;
padding: 2rem 0 0;
-webkit-line-clamp: 100;
} }
} }
.unit { .unit {
width: 100%; width: 95%;
img { img {
width: 100%; width: 100%;
} }
} }
} }
@media (max-width: 320px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 1rem;
right: 1rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 320px) and (max-width: 375px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 1rem;
right: 1rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 2rem;
right: 2rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 480px) and (max-width: 640px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 3rem;
right: 3rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 640px) and (max-width: 768px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 3rem;
right: 3rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 3rem;
right: 3rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
@media (min-width: 980px) and (max-width: 1200px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.beamBox {
.imgText {
bottom: 4rem;
right: 4rem;
}
}
.intro {
width: 100%;
.des {
height: auto;
}
}
}
</style> </style>

@ -1,10 +1,15 @@
<template> <template>
<div class="wrap"> <div class="wrap">
<el-carousel :interval="6000" :arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" :indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> <el-carousel :interval="6000"
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list"> <template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> <el-carousel-item v-if="item.pic && item.isEnable"
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" @click="openLink(item)"> :key="i">
<img :src="item.pic" alt=""> <div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<p class="banner-name">{{ item.title }}</p> <p class="banner-name">{{ item.title }}</p>
</div> </div>
</el-carousel-item> </el-carousel-item>
@ -15,24 +20,34 @@
<div class="inner"> <div class="inner">
<h6>{{ modules[1].form.title }}</h6> <h6>{{ modules[1].form.title }}</h6>
<p class="en">{{ modules[1].form.subTitle }}</p> <p class="en">{{ modules[1].form.subTitle }}</p>
<div class="card" v-html="modules[1].form.des"></div> <div class="card"
v-html="modules[1].form.des"></div>
<div class="flex textBox"> <div class="flex textBox">
<div class="left"> <div class="left">
<div class="des" v-html="modules[2].form.des"></div> <div class="des"
v-html="modules[2].form.des"></div>
</div> </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="intro"> <div class="intro">
<img class="bg" src="http://10.10.11.7/images/device/7.png" alt=""> <img class="bg"
<img class="pic" :src="modules[3].form.pic" alt=""> src="http://10.10.11.7/images/device/7.png"
alt="">
<img class="pic"
:src="modules[3].form.pic"
alt="">
</div> </div>
<div class="unit"> <div class="unit">
<h6>{{ modules[4].form.title }}</h6> <h6>{{ modules[4].form.title }}</h6>
<img class="pic" :src="modules[4].form.pic" alt=""> <img class="pic"
:src="modules[4].form.pic"
alt="">
</div> </div>
</div> </div>
</template> </template>
@ -73,7 +88,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';
.wrap { .wrap {
background: url(http://10.10.11.7/images/device/4.png) bottom right/auto no-repeat; background: url(http://10.10.11.7/images/device/4.png) bottom right/auto no-repeat;
/deep/ .el-carousel { /deep/ .el-carousel {
@ -108,14 +123,13 @@ export default {
.share { .share {
position: relative; position: relative;
.inner { .inner {
width: 90%; width: 100%;
max-width: 1323px; max-width: 1323px;
.textBox { .textBox {
margin-top: 12.125rem;
position: absolute; position: absolute;
width: 85%; width: 85%;
right: 0; right: 0;
top: 16.125rem; top: 26rem;
.left { .left {
flex-grow: 1; flex-grow: 1;
} }
@ -140,25 +154,25 @@ export default {
font-size: 2.2rem; font-size: 2.2rem;
font-family: PingFangSC-Light, PingFang SC; font-family: PingFangSC-Light, PingFang SC;
font-weight: 300; font-weight: 300;
color: #E3E3E3; color: #e3e3e3;
} }
.card { .card {
position: absolute; position: absolute;
left: 0; left: 0;
max-width: 1671px; max-width: 1671px;
width: 85%; width: 85%;
padding: 1.6rem 2.9rem 1.6rem 16%; padding: 1.6rem 2.9rem 1.6rem 14%;
font-size: 1.06rem; font-size: 1.06rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
border-radius: 0 6rem 0 0; border-radius: 0 6rem 0 0;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
line-height: 2.375rem; line-height: 2.375rem;
background: url(http://10.10.11.7/images/device/5.png) 0 0/cover no-repeat; background: url(http://10.10.11.7/images/device/5.png) 0 0 /100% 100% no-repeat;
} }
.des { .des {
margin-top: 25px; margin-top: 25px;
font-size: .98rem; font-size: 0.98rem;
-webkit-line-clamp: inherit; -webkit-line-clamp: inherit;
color: #333; color: #333;
line-height: 37px; line-height: 37px;
@ -196,365 +210,87 @@ export default {
padding-bottom: 60px; padding-bottom: 60px;
margin: 0 auto; margin: 0 auto;
h6 { h6 {
padding-left: .93rem; padding-left: 0.93rem;
margin-bottom: .93rem; margin-bottom: 0.93rem;
font-size: .88rem; font-size: 0.88rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #2A2A2A; color: #2a2a2a;
border-left: 4px solid #1583FF; border-left: 4px solid #1583ff;
}
}
@media screen and (min-width:351px) and (max-width:420px) {
.intro {
height: 18rem !important;
}
.block {
padding: 50px 0;
}
}
@media (min-width:421px) and (max-width:490px) {
.intro {
height: 22rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:491px) and (max-width:620px) {
.intro {
height: 28rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:621px) and (max-width:720px) {
.intro {
height: 32rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:721px) and (max-width:820px) {
.intro {
height: 36rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:821px) and (max-width:920px) {
.intro {
height: 40rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:921px) and (max-width:1020px) {
.intro {
height: 44rem !important;
}
.block {
padding: 50px 0;
}
}
@media screen and (min-width:1021px) and (max-width:1120px) {
.intro {
height: 48rem !important;
}
.block {
padding: 50px 0;
}
}/* 大于960 小于1200 */
@media screen and (min-width:1121px) and (max-width:1220px) {
.intro {
height: 52rem !important;
}
.block {
padding: 50px 0;
}
}
@media (min-width: 280px) and (max-width: 1200px) {
body{
width: 100% !important;
}
.unit{
width: 100%;
img{
width: 100%;
} }
} }
@media (max-width: 1400px) {
.share {
.card { .card {
width: 100% !important;position: relative !important;margin-left: -50px;; position: relative;
} margin-left: -2.5%;
.textBox{
margin-top: 40px !important;
} }
.inner {
max-width: none;
width: 95%;
.textBox { .textBox {
position: static;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: flex-end;
margin-left: 15%;
.left { .left {
width: 100%; width: 100%;
.des { .des {
-webkit-line-clamp: 100 -webkit-line-clamp: 100;
}
}
} }
} }
.pic { .pic {
width: 100%; width: 50%;
height: auto;
margin-top: 20px; margin-top: 20px;
} }
} }
.bg { .bg {
width:100% width: 100%;
} }
.intro { .intro {
height: 45rem; height: 36rem;
margin-top: 0;
.pic { .pic {
width: 100% !important; width: 100%;
left: 0; left: 0;
top: 6%; top: 6%;
} }
} }
}
@media (min-width: 280px) and (max-width: 375px) {
body{
width: 100% !important;
}
.block{
padding: 50px 0;
}
.unit { .unit {
width: 100%; width: 95%;
img { img {
width: 100%; width: 100%;
} }
} }
.card{
width: 100% !important;position: relative !important;margin-left: -50px;;
}
.textBox{
margin-top: 40px !important;
}
.textBox{
display: flex;
flex-direction: column;
.left{
width: 100%;
.des{
-webkit-line-clamp: 100
}
}
.pic{
width: 100%;
height: auto;
margin-top: 20px;
}
}
.bg{
width:100%
}
.intro {
height: 15rem;
.pic{
width: 100% !important;
left: 0;
top: 6%;
}
}
}
@media (max-width: 320px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.share {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 41rem;
.bg {
height: 10rem;
}
.pic {
height: auto;
}
}
}
@media (min-width: 320px) and (max-width: 375px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
} }
@media (max-width: 980px) {
.share { .share {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 41rem;
.bg {
height: 13rem;
}
.pic {
height: auto;
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.share {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 43rem;
.bg {
height: 16rem;
}
.pic {
height: auto;
}
}
}
@media (min-width: 480px) and (max-width: 640px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.share {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 53rem;
.bg {
height: 22rem;
}
.pic { .pic {
height: auto; width: 80%;
}
} }
} }
@media (min-width: 640px) and (max-width: 768px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
} }
@media (max-width: 640px) {
.share { .share {
.card { .inner {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox { .textBox {
top:23.125rem !important; margin: 0 auto;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 53rem;
.bg {
height: 26rem;
}
.pic {
height: auto;
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.share {
.card {
font-size: .9rem;
line-height: 1.1rem;
} }
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
} }
.left {
margin-right: 0;
} }
} }
.intro { .intro {
margin-top: 63rem;
.bg {
height: 30rem;
}
.pic {
height: auto; height: auto;
} .bg,
}
}
@media (min-width: 980px) and (max-width: 1200px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
}
.share {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
}
}
.intro {
margin-top: 73rem;
.bg {
height: 35rem;
}
.pic { .pic {
position: static;
width: 100%;
height: auto; height: auto;
} }
} }

@ -1,10 +1,15 @@
<template> <template>
<div class="wrap"> <div class="wrap">
<el-carousel :interval="6000" :arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" :indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> <el-carousel :interval="6000"
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list"> <template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> <el-carousel-item v-if="item.pic && item.isEnable"
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" @click="openLink(item)"> :key="i">
<img :src="item.pic" alt=""> <div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<p class="banner-name">{{ item.title }}</p> <p class="banner-name">{{ item.title }}</p>
</div> </div>
</el-carousel-item> </el-carousel-item>
@ -14,14 +19,19 @@
<div class="block history gray"> <div class="block history gray">
<div class="inner"> <div class="inner">
<h2 class="wow fadeInLeft">{{ modules[1].form.title }}</h2> <h2 class="wow fadeInLeft">{{ 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" v-html="modules[2].form.des"></div> <div class="text"
v-html="modules[2].form.des"></div>
</div> </div>
<img class="bg" src="http://10.10.11.7/images/device/10.png" alt="" /> <img class="bg"
src="http://10.10.11.7/images/device/10.png"
alt="" />
</div> </div>
</div> </div>
</div> </div>
@ -30,11 +40,13 @@
<div class="inner"> <div class="inner">
<div class="left"> <div class="left">
<h5>{{ modules[3].form.title }}</h5> <h5>{{ modules[3].form.title }}</h5>
<img :src="modules[3].form.pic" alt="" /> <img :src="modules[3].form.pic"
alt="" />
</div> </div>
<div class="right"> <div class="right">
<h6>{{ modules[4].form.title }}</h6> <h6>{{ modules[4].form.title }}</h6>
<img :src="modules[4].form.pic" alt="" /> <img :src="modules[4].form.pic"
alt="" />
</div> </div>
</div> </div>
</div> </div>
@ -142,13 +154,13 @@ export default {
right: 0rem; right: 0rem;
bottom: 4.25rem; bottom: 4.25rem;
display: flex; display: flex;
font-size: .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;
background-color: #FFFFFF; background-color: #ffffff;
border-radius: 50%; border-radius: 50%;
margin-right: 10px; margin-right: 10px;
margin-top: 8px; margin-top: 8px;
@ -206,17 +218,17 @@ export default {
margin-left: 2%; margin-left: 2%;
} }
h5 { h5 {
margin-bottom: .93rem; margin-bottom: 0.93rem;
font-size: .88rem; font-size: 0.88rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #2a2a2a; color: #2a2a2a;
} }
h6 { h6 {
padding-left: .93rem; padding-left: 0.93rem;
margin-bottom: .93rem; margin-bottom: 0.93rem;
font-size: .88rem; font-size: 0.88rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #2a2a2a; color: #2a2a2a;
@ -229,7 +241,6 @@ export default {
} }
} }
/* 小于400 */
@media (min-width: 280px) and (max-width: 620px) { @media (min-width: 280px) and (max-width: 620px) {
.inner { .inner {
flex-direction: column; flex-direction: column;
@ -239,8 +250,6 @@ export default {
width: 50%; width: 50%;
margin: 20px auto; margin: 20px auto;
} }
} }
.history { .history {
@ -255,7 +264,8 @@ export default {
.inner { .inner {
.texts { .texts {
.bg { .bg {
width: 100%;height: 200px; width: 100%;
height: 200px;
margin: -50px 0px 0 0; margin: -50px 0px 0 0;
} }
} }
@ -269,41 +279,49 @@ export default {
} }
.history { .history {
.inner {
width: 95%;
}
.texts {
flex-direction: column;
}
.bg { .bg {
margin: -142px -0px 0 0; margin: 0 auto;
} }
} }
.inner { .inner {
flex-direction: column; flex-direction: column;
width: 95%;
.left, .left,
.right { .right {
width: 95%; width: 95%;
margin: 20px auto; margin: 20px auto;
} }
} }
.intro {
img {
height: auto;
} }
@media (max-width: 320px) {
.banner{
height: 12rem;
padding: 6rem 0 0 2rem;
} }
.block { }
.inner { @media (max-width: 980px) {
.history {
.bg {
width: 100%; width: 100%;
} }
} }
} }
@media (min-width: 320px) and (max-width: 375px) { @media (max-width: 320px) {
.banner { .banner {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
} }
@media (min-width: 320px) and (max-width: 375px) {
.banner {
height: 12rem;
padding: 6rem 0 0 2rem;
} }
} }
@media (min-width: 375px) and (max-width: 480px) { @media (min-width: 375px) and (max-width: 480px) {
@ -311,54 +329,29 @@ export default {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
}
}
} }
@media (min-width: 480px) and (max-width: 640px) { @media (min-width: 480px) and (max-width: 640px) {
.banner { .banner {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
}
}
} }
@media (min-width: 640px) and (max-width: 768px) { @media (min-width: 640px) and (max-width: 768px) {
.banner { .banner {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
}
}
} }
@media (min-width: 768px) and (max-width: 980px) { @media (min-width: 768px) and (max-width: 980px) {
.banner { .banner {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
}
}
} }
@media (min-width: 980px) and (max-width: 1200px) { @media (min-width: 980px) and (max-width: 1200px) {
.banner { .banner {
height: 12rem; height: 12rem;
padding: 6rem 0 0 2rem; padding: 6rem 0 0 2rem;
} }
.block {
.inner {
width: 100%;
}
}
} }
</style> </style>

@ -2,7 +2,9 @@
<!-- 产业光源-大事记 --> <!-- 产业光源-大事记 -->
<div class="wrap"> <div class="wrap">
<div class="single-banner single-banner-overview"> <div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt=""> <img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts"> <div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6> <h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div> </div>
@ -10,7 +12,9 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template> </template>
</ul> </ul>
@ -19,22 +23,32 @@
<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" class="event"> <div v-if="modules[1].list.length"
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" :key="i" :class="{active: curYear == i}" @click="yearClick(i)">{{ item.title }}</li> <li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
</template> </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" :key="j" :class="{'cursor-pointer': isLink(e.link.linkName)}" @click="openLink(e)"> <li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
@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>
<img v-if="e.pic" :src="e.pic" alt="" class="pic"> <img v-if="e.pic"
:src="e.pic"
alt=""
class="pic">
</li> </li>
</template> </template>
</ul> </ul>
@ -70,7 +84,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';
.wrap { .wrap {
background: url(http://10.10.11.7/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat, background: url(http://10.10.11.7/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(http://10.10.11.7/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat; url(http://10.10.11.7/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
@ -88,8 +102,8 @@ export default {
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;
} }
} }
} }
@ -99,14 +113,14 @@ export default {
font-size: 2rem; font-size: 2rem;
font-family: PingFangSC-Semibold, PingFang SC; font-family: PingFangSC-Semibold, PingFang SC;
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;
font-family: PingFangSC-Light, PingFang SC; font-family: PingFangSC-Light, PingFang SC;
font-weight: 300; font-weight: 300;
color: #E3E3E3; color: #e3e3e3;
} }
} }
.event { .event {
@ -128,12 +142,12 @@ export default {
font-weight: 600; font-weight: 600;
font-family: SFProDisplay-Semibold, SFProDisplay; font-family: SFProDisplay-Semibold, SFProDisplay;
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;
@ -152,7 +166,7 @@ export default {
font-size: 3.2rem; font-size: 3.2rem;
font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN; font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
font-weight: 800; font-weight: 800;
color: #1A81F4; color: #1a81f4;
} }
.list { .list {
border-top: 1px solid #ddd; border-top: 1px solid #ddd;
@ -195,7 +209,7 @@ export default {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -249,18 +263,6 @@ export default {
} }
} }
@media (max-width: 320px) { @media (max-width: 320px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -287,18 +289,6 @@ export default {
} }
} }
@media (min-width: 320px) and (max-width: 375px) { @media (min-width: 320px) and (max-width: 375px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -325,18 +315,6 @@ export default {
} }
} }
@media (min-width: 375px) and (max-width: 480px) { @media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -363,18 +341,6 @@ export default {
} }
} }
@media (min-width: 480px) and (max-width: 640px) { @media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 10rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -401,18 +367,6 @@ export default {
} }
} }
@media (min-width: 640px) and (max-width: 768px) { @media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 12rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -439,18 +393,6 @@ export default {
} }
} }
@media (min-width: 768px) and (max-width: 980px) { @media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 15rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -477,18 +419,6 @@ export default {
} }
} }
@media (min-width: 980px) and (max-width: 1200px) { @media (min-width: 980px) and (max-width: 1200px) {
.wrap {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 20rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;

@ -1,45 +1,73 @@
<template> <template>
<div class="wrap"> <div class="wrap">
<el-carousel height="991px" :interval="6000" :arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'" :indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'"> <el-carousel :interval="6000"
:arrow="(modules[0] && modules[0].list.filter(e => e.isEnable).length > 1) ? 'hover' : 'never'"
:indicator-position="modules[0].list.filter(e => e.isEnable).length > 1 ? '' : 'none'">
<template v-for="(item, i) in modules[0].list"> <template v-for="(item, i) in modules[0].list">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> <el-carousel-item v-if="item.pic && item.isEnable"
<img :class="[{'cursor-pointer': isLink(item.link.linkName)}]" width="100%" height="959" :src="item.pic" alt="" @click="openLink(item)"> :key="i">
<img :class="[{'cursor-pointer': isLink(item.link.linkName)}]"
width="100%"
:src="item.pic"
alt=""
@click="openLink(item)">
</el-carousel-item> </el-carousel-item>
</template> </template>
</el-carousel> </el-carousel>
<div class="block banner-block" id="part1"> <div class="block banner-block"
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" @click="toAll(modules[2].form)">MORE</span> <span class="more"
@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" data-wow-delay="0.5s" @click="toArtice(curArticle, modules[2].form)"> <div class="sfel-banner wow fadeInDown"
<div style="width: 50%;height: 410px;overflow: hidden;" class="newBox"> data-wow-delay="0.5s"
<img class="pic" width="100%" height="100%" :src="curArticle.titleImg" alt=""> @click="toArtice(curArticle, modules[2].form)">
<div style="width: 50%;overflow: hidden;"
class="newBox">
<img class="pic"
width="100%"
height="100%"
:src="curArticle.titleImg"
alt="">
</div> </div>
<div class="right"> <div class="right">
<h6>{{ curArticle.title }}</h6> <h6>{{ curArticle.title }}</h6>
<div class="des" v-html="curArticle.mainBody"></div> <div class="des"
v-html="curArticle.mainBody"></div>
<p class="meta">{{ curArticle.releaseTime }} {{ curArticle.classificationName && ' | ' + curArticle.classificationName }}</p> <p class="meta">{{ curArticle.releaseTime }} {{ curArticle.classificationName && ' | ' + curArticle.classificationName }}</p>
<ul class="inds"> <ul class="inds">
<li v-for="i in articles.length > 3 ? 4 : articles.length" :key="i" :class="{active: curInd == i - 1}" @click.stop="switchCarousel(i - 1)"></li> <li v-for="i in articles.length > 3 ? 4 : articles.length"
:key="i"
:class="{active: curInd == i - 1}"
@click.stop="switchCarousel(i - 1)"></li>
</ul> </ul>
</div> </div>
</div> </div>
<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" :key="i" class="wow fadeInDown" :data-wow-delay="(0.1 * i).toFixed(1) + 's'"> <li v-if="i > 3 && i < 7"
<img class="pic" :src="item.titleImg" alt=""> :key="i"
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" src="@/assets/images/arrow.png" alt="" @click="toArtice(item, modules[2].form)"> <img class="arrow"
src="@/assets/images/arrow.png"
alt=""
@click="toArtice(item, modules[2].form)">
</div> </div>
</li> </li>
</template> </template>
@ -48,7 +76,8 @@
</div> </div>
</div> </div>
<div class="block talent" id="part2"> <div class="block talent"
id="part2">
<div class="inner"> <div class="inner">
<div class="title wow fadeInUp"> <div class="title wow fadeInUp">
<h5> <h5>
@ -58,51 +87,84 @@
<!-- <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" data-wow-delay="0.5s"> <div class="left wow fadeInLeft"
data-wow-delay="0.5s">
<h6>{{ modules[4].form.title }}</h6> <h6>{{ modules[4].form.title }}</h6>
<div class="text" v-html="modules[4].form.des"></div> <div class="text"
<el-button v-if="isLink(modules[4].form.link.linkName)" type="primary" round @click="openLink(modules[4].form)">这里跳转</el-button> v-html="modules[4].form.des"></div>
<el-button v-if="isLink(modules[4].form.link.linkName)"
type="primary"
round
@click="openLink(modules[4].form)">这里跳转</el-button>
</div> </div>
<img :src="modules[4].form.pic" alt="" class="pic"> <img :src="modules[4].form.pic"
alt=""
class="pic">
</div> </div>
</div> </div>
</div> </div>
<div class="block conference" id="part3"> <div class="block conference"
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" @click="toAll(modules[6].form)">MORE</span> <span class="more"
@click="toAll(modules[6].form)">MORE</span>
</div> </div>
<div class="shows" v-if="articles2.length"> <div class="shows"
<div class="left wow fadeInLeft" data-wow-delay="0.5s" @click="toArtice(articles2[0], modules[6].form)"> v-if="articles2.length">
<img class="pic" width="100%" height="100%" :src="articles2[0].titleImg" alt=""> <div class="left wow fadeInLeft"
data-wow-delay="0.5s"
@click="toArtice(articles2[0], modules[6].form)">
<img class="pic"
width="100%"
height="100%"
:src="articles2[0].titleImg"
alt="">
<div class="text">{{ articles2[0].title }}</div> <div class="text">{{ articles2[0].title }}</div>
</div> </div>
<ul class="card-list wow fadeInRight" data-wow-delay="0.5s"> <ul class="card-list wow fadeInRight"
data-wow-delay="0.5s">
<template v-for="(item, i) in articles2"> <template v-for="(item, i) in articles2">
<li v-if="i && i < 4" :key="i" @click="toArtice(item, modules[6].form)"> <li v-if="i && i < 4"
<img class="pic" :src="item.titleImg" alt=""> :key="i"
@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" class="text"> <p v-if="item.keynoteSpeaker"
<img class="icon" src="@/assets/images/mine.png" alt=""> class="text">
<img class="icon"
src="@/assets/images/mine.png"
alt="">
{{ item.keynoteSpeaker }} {{ item.keynoteSpeaker }}
</p> </p>
<p v-if="item.activityStartTime" class="text"> <p v-if="item.activityStartTime"
<img class="icon" src="@/assets/images/time.png" alt=""> class="text">
<img class="icon"
src="@/assets/images/time.png"
alt="">
会议时间: {{ item.activityStartTime + ' ~ ' + item.activityEndTime }} 会议时间: {{ item.activityStartTime + ' ~ ' + item.activityEndTime }}
</p> </p>
<p v-if="item.onlineLocation" class="text"> <p v-if="item.onlineLocation"
<img class="icon" src="@/assets/images/online.png" alt=""> class="text">
<img class="icon"
src="@/assets/images/online.png"
alt="">
{{ item.onlineLocation }} {{ item.onlineLocation }}
</p> </p>
<p v-if="item.offlineLocation" class="text"> <p v-if="item.offlineLocation"
<img class="icon" src="@/assets/images/location.png" alt=""> class="text">
<img class="icon"
src="@/assets/images/location.png"
alt="">
{{ item.offlineLocation }} {{ item.offlineLocation }}
</p> </p>
</div> </div>
@ -113,29 +175,38 @@
</div> </div>
</div> </div>
<div class="block program" id="part4"> <div class="block program"
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" @click="toAll(modules[8].form)">MORE</span> <span class="more"
@click="toAll(modules[8].form)">MORE</span>
</div> </div>
<template v-if="articles3.length"> <template v-if="articles3.length">
<div class="slide" @click="toArtice(articles3[0], modules[8].form)"> <div class="slide"
@click="toArtice(articles3[0], modules[8].form)">
<div class="texts"> <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" :src="articles3[0].titleImg" alt=""> <img class="pic"
: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" :key="i" class="wow fadeInDown" :data-wow-delay="(0.1 * i).toFixed(1) + 's'" @click="toArtice(item, modules[8].form)"> <li v-if="i && i < 4"
:key="i"
class="wow fadeInDown"
:data-wow-delay="(0.1 * i).toFixed(1) + 's'"
@click="toArtice(item, modules[8].form)">
<div class="des">{{ item.title }}</div> <div class="des">{{ item.title }}</div>
<p class="date">{{ item.releaseTime }}</p> <p class="date">{{ item.releaseTime }}</p>
</li> </li>
@ -147,10 +218,14 @@
<div class="tools"> <div class="tools">
<div class="logo"> <div class="logo">
<img src="@/assets/images/logo.png" alt=""> <img src="@/assets/images/logo.png"
alt="">
</div> </div>
<ul class="nav"> <ul class="nav">
<li v-for="(item, i) in navs" :key="i" class="column" @click="toAnchor(item)">{{ item.name }}</li> <li v-for="(item, i) in navs"
:key="i"
class="column"
@click="toAnchor(item)">{{ item.name }}</li>
</ul> </ul>
</div> </div>
</div> </div>
@ -195,6 +270,7 @@ export default {
this.$post(`${this.api.queryArticlesByColumnType}?columnId=${column[column.length - 1]}`).then(({ data }) => { this.$post(`${this.api.queryArticlesByColumnType}?columnId=${column[column.length - 1]}`).then(({ data }) => {
this.articles = Util.removeTag(data.slice(0, articleNum || 7)) this.articles = Util.removeTag(data.slice(0, articleNum || 7))
this.curArticle = this.articles[0] this.curArticle = this.articles[0]
this.carouselInterval()
}).catch(err => { }) }).catch(err => { })
} }
if (json[6].form.column.length) { if (json[6].form.column.length) {
@ -222,16 +298,17 @@ export default {
this.navs = navs this.navs = navs
this.modules = json this.modules = json
this.carouselInterval()
} }
}).catch(err => { }) }).catch(err => { })
}, },
// //
carouselInterval () { carouselInterval () {
const len = this.articles.length > 3 ? 4 : this.articles.length
console.log("🚀 ~ file: index.vue:309 ~ carouselInterval ~ len:", len)
clearInterval(this.timer) clearInterval(this.timer)
this.timer = setInterval(() => { this.timer = setInterval(() => {
this.curInd++ this.curInd++
if (this.curInd > 3) this.curInd = 0 if (this.curInd > len) this.curInd = 0
this.curArticle = this.articles[this.curInd] || {} this.curArticle = this.articles[this.curInd] || {}
}, 5000) }, 5000)
}, },
@ -253,7 +330,15 @@ 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 {
height: 991px;
.el-carousel__container,
.el-carousel__item,
img {
height: 100%;
}
}
.title { .title {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
@ -268,16 +353,16 @@ export default {
font-weight: 500; font-weight: 500;
color: #333333; color: #333333;
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: .8rem; font-size: 0.8rem;
color: #666; color: #666;
cursor: pointer; cursor: pointer;
} }
@ -296,7 +381,7 @@ export default {
display: flex; display: flex;
cursor: pointer; cursor: pointer;
.pic { .pic {
transition: .5s; transition: 0.5s;
&:hover { &:hover {
transform: scale(1.3); transform: scale(1.3);
} }
@ -305,11 +390,13 @@ export default {
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, .des, .meta { h6,
.des,
.meta {
color: #fff; color: #fff;
transform: translateY(15px); transform: translateY(15px);
} }
@ -324,9 +411,9 @@ export default {
width: 10px; width: 10px;
height: 10px; height: 10px;
margin-right: 12px; margin-right: 12px;
background: #FFFFFF; background: #ffffff;
border-radius: 50%; border-radius: 50%;
transition: .2s; transition: 0.2s;
&.active { &.active {
width: 30px; width: 30px;
background: rgba(255, 255, 255, 0.3); background: rgba(255, 255, 255, 0.3);
@ -336,17 +423,17 @@ export default {
} }
h6 { h6 {
font-size: 1.3rem; font-size: 1.3rem;
transition: .3s; transition: 0.3s;
} }
.des { .des {
margin: 30px 0; margin: 30px 0;
font-size: .9rem; font-size: 0.9rem;
line-height: 24px; line-height: 24px;
transition: .3s; transition: 0.3s;
} }
.meta { .meta {
font-size: .8rem; font-size: 0.8rem;
transition: .3s; transition: 0.3s;
} }
} }
.card { .card {
@ -358,7 +445,7 @@ export default {
margin-right: 28px; margin-right: 28px;
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: .3s; transition: 0.3s;
background-color: #fff; background-color: #fff;
&:hover { &:hover {
transform: scale(1.05); transform: scale(1.05);
@ -369,13 +456,13 @@ export default {
} }
.pic { .pic {
width: 100%; width: 100%;
height: 259px; // height: 259px;
} }
.texts { .texts {
padding: 40px 30px; padding: 40px 30px;
} }
.meta { .meta {
font-size: .9rem; font-size: 0.9rem;
color: #666; color: #666;
} }
.des { .des {
@ -396,7 +483,7 @@ export default {
.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%;
@ -412,7 +499,7 @@ export default {
} }
.pic { .pic {
width: 50%; width: 50%;
height: 500px; min-height: 465px;
} }
} }
} }
@ -439,11 +526,11 @@ export default {
font-size: 1rem; font-size: 1rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
background-color: rgba(0, 0, 0, 0.57); background-color: rgba(0, 0, 0, 0.57);
} }
.pic { .pic {
transition: .5s; transition: 0.5s;
} }
&:hover { &:hover {
.pic { .pic {
@ -460,7 +547,7 @@ export default {
margin-bottom: 7px; margin-bottom: 7px;
background-color: #fff; background-color: #fff;
cursor: pointer; cursor: pointer;
transition: .3s; transition: 0.3s;
&:last-child { &:last-child {
margin-bottom: 0; margin-bottom: 0;
} }
@ -492,7 +579,7 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
margin: 10px 0; margin: 10px 0;
font-size: .9rem; font-size: 0.9rem;
@include ellipsis; @include ellipsis;
} }
.icon { .icon {
@ -511,7 +598,7 @@ export default {
.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;
@ -525,19 +612,19 @@ export default {
line-height: 32px; line-height: 32px;
} }
.meta { .meta {
font-size: .9rem; font-size: 0.9rem;
color: #666; color: #666;
} }
} }
.img-wrap { .img-wrap {
width: 49%; width: 49%;
height: 430px; min-height: 334px;
overflow: hidden; overflow: hidden;
} }
.pic { .pic {
width: 100%; width: 100%;
height: 100%; height: 100%;
transition: .5s; transition: 0.5s;
} }
&:hover { &:hover {
.pic { .pic {
@ -552,7 +639,7 @@ export default {
padding: 36px 22px; padding: 36px 22px;
margin-right: 14px; margin-right: 14px;
background: url(../../../assets/images/sfel/7.png) no-repeat center; background: url(../../../assets/images/sfel/7.png) no-repeat center;
transition: .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);
@ -571,13 +658,13 @@ export default {
font-size: 1rem; font-size: 1rem;
font-family: PingFangSC-Medium, PingFang SC; font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
line-height: 30px; line-height: 30px;
} }
.date { .date {
font-size: .9rem; font-size: 0.9rem;
font-family: LaoSangamMN; font-family: LaoSangamMN;
color: #FFFFFF; color: #ffffff;
} }
} }
} }
@ -590,7 +677,7 @@ export default {
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 {
@ -599,20 +686,19 @@ export default {
font-size: 1.1rem; font-size: 1.1rem;
line-height: 50px; line-height: 50px;
color: #fff; color: #fff;
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;
} }
} }
} }
} }
@media (max-width: 1520px) { @media (max-width: 1520px) {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.sfel-banner { .sfel-banner {
@ -639,9 +725,9 @@ export default {
width: 100%; width: 100%;
} }
.right { .right {
width: 100%;margin-top: 20px; width: 100%;
margin-top: 20px;
} }
} }
.shows { .shows {
flex-direction: column; flex-direction: column;
@ -649,7 +735,8 @@ export default {
width: 100%; width: 100%;
} }
.card-list { .card-list {
width: 100%;margin-top: 20px; width: 100%;
margin-top: 20px;
li { li {
flex-direction: column; flex-direction: column;
.pic { .pic {
@ -671,6 +758,7 @@ export default {
} }
.pic { .pic {
width: 100%; width: 100%;
min-height: 0;
} }
} }
} }
@ -691,15 +779,18 @@ export default {
width: 100%; width: 100%;
} }
} }
.slide , .list{ .slide,
.list {
flex-direction: column; flex-direction: column;
.texts , .img-wrap{ .texts,
.img-wrap {
width: 100%; width: 100%;
} }
} }
.list { .list {
li { li {
width: 100% !important; margin-top: 20px; width: 100% !important;
margin-top: 20px;
} }
} }
.slides { .slides {
@ -722,5 +813,9 @@ export default {
} }
} }
} }
@media (max-width: 980px) {
/deep/ .el-carousel {
height: 600px;
}
}
</style> </style>

@ -2,7 +2,9 @@
<!-- 产业光源-地理位置 --> <!-- 产业光源-地理位置 -->
<div class="wrap"> <div class="wrap">
<div class="single-banner single-banner-overview"> <div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt=""> <img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts"> <div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6> <h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div> </div>
@ -10,32 +12,49 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
: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" data-wow-delay="0.5s" :class="{'cursor-pointer': isLink(modules[1].form.link.linkName)}" @click="openLink(modules[1].form)"> <div class="item wow bounceInLeft"
data-wow-delay="0.5s"
:class="{'cursor-pointer': isLink(modules[1].form.link.linkName)}"
@click="openLink(modules[1].form)">
<div class="img-wrap"> <div class="img-wrap">
<img class="pic" :src="modules[1].form.pic" alt=""> <img class="pic"
: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">{{ modules[1].form.des }}</div> <div class="des">{{ modules[1].form.des }}</div>
</div> </div>
</div> </div>
<div class="item wow bounceInRight" data-wow-delay="0.6s" :class="{'cursor-pointer': isLink(modules[2].form.link.linkName)}" @click="openLink(modules[2].form)"> <div class="item wow bounceInRight"
data-wow-delay="0.6s"
:class="{'cursor-pointer': isLink(modules[2].form.link.linkName)}"
@click="openLink(modules[2].form)">
<div class="img-wrap"> <div class="img-wrap">
<img class="pic" :src="modules[2].form.pic" alt=""> <img class="pic"
: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">{{ modules[2].form.des }}</div> <div class="des">{{ modules[2].form.des }}</div>
</div> </div>
</div> </div>
<div class="item wow bounceInLeft" data-wow-delay="0.5s" :class="{'cursor-pointer': isLink(modules[3].form.link.linkName)}" @click="openLink(modules[3].form)"> <div class="item wow bounceInLeft"
data-wow-delay="0.5s"
:class="{'cursor-pointer': isLink(modules[3].form.link.linkName)}"
@click="openLink(modules[3].form)">
<div class="img-wrap"> <div class="img-wrap">
<img class="pic" :src="modules[3].form.pic" alt=""> <img class="pic"
: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>
@ -68,7 +87,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';
.tabs { .tabs {
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -82,8 +101,8 @@ export default {
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;
} }
} }
} }
@ -98,8 +117,8 @@ export default {
padding: 42px; padding: 42px;
margin-bottom: 36px; margin-bottom: 36px;
color: #333; color: #333;
background: #F5F5F5 url(http://10.10.11.7/images/overviewSetup/1.png) right bottom/auto no-repeat; background: #f5f5f5 url(http://10.10.11.7/images/overviewSetup/1.png) right bottom/auto no-repeat;
transition: .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;
@ -109,21 +128,19 @@ export default {
} }
} }
&:hover { &:hover {
// color: #fff;
// background: #005388;
.pic { .pic {
transform: scale(1.1); transform: scale(1.1);
} }
} }
} }
.img-wrap { .img-wrap {
height: 465px; height: 383px;
overflow: hidden; overflow: hidden;
} }
.pic { .pic {
width: 100%; width: 100%;
height: 100%; height: 100%;
transition: .5s; transition: 0.5s;
} }
.texts { .texts {
width: 707px; width: 707px;
@ -143,31 +160,7 @@ export default {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto;
white-space: normal;
justify-content: normal;
display: -webkit-box;
li {
white-space: normal;
}
}
.tab-content{
padding: 20px 0;
.org{
width: 100%;
padding:15px;
flex-direction: column;
.left{
width: 100%;
}
}
}
}
@media (max-width: 1200px) {
.tabs {
overflow: hidden;;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -176,20 +169,6 @@ export default {
white-space: normal; white-space: normal;
} }
} }
.tab-content{
padding: 20px 0;
.org{
width: 100%;
padding:15px;
flex-direction: column;
.left{
width: 100%;
}
img{
width: 100%;
}
}
}
.block { .block {
padding: 2rem 0; padding: 2rem 0;
.inner { .inner {
@ -225,29 +204,20 @@ export default {
.tab-content { .tab-content {
padding: 1.25rem 0; padding: 1.25rem 0;
.item { .item {
padding: .85rem; padding: 0.85rem;
flex-direction: column !important; flex-direction: column !important;
.texts { .texts {
margin-top: .5rem; margin-top: 0.5rem;
width: 100%; width: 100%;
padding: 0; padding: 0;
} }
} }
} .img-wrap {
} height: auto;
@media (max-width: 320px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
} }
} }
} }
@media (max-width: 320px) {
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -261,9 +231,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 13rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -290,19 +257,6 @@ export default {
} }
} }
@media (min-width: 320px) and (max-width: 375px) { @media (min-width: 320px) and (max-width: 375px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -316,9 +270,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 15rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -345,18 +296,6 @@ export default {
} }
} }
@media (min-width: 375px) and (max-width: 480px) { @media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -370,9 +309,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 18rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -399,18 +335,6 @@ export default {
} }
} }
@media (min-width: 480px) and (max-width: 640px) { @media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 10rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -424,9 +348,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 22rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -453,18 +374,6 @@ export default {
} }
} }
@media (min-width: 640px) and (max-width: 768px) { @media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 12rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -478,9 +387,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 25rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -507,18 +413,6 @@ export default {
} }
} }
@media (min-width: 768px) and (max-width: 980px) { @media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 15rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -532,9 +426,6 @@ export default {
} }
} }
.item { .item {
.img-wrap {
height: 28rem;
}
.texts { .texts {
h6 { h6 {
font-size: 1.5rem; font-size: 1.5rem;
@ -561,18 +452,6 @@ export default {
} }
} }
@media (min-width: 980px) and (max-width: 1200px) { @media (min-width: 980px) and (max-width: 1200px) {
.wrap {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 20rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;

@ -2,7 +2,9 @@
<!-- 产业光源-机构设置 --> <!-- 产业光源-机构设置 -->
<div class="wrap"> <div class="wrap">
<div class="single-banner single-banner-overview"> <div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt=""> <img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts"> <div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6> <h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div> </div>
@ -10,7 +12,9 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template> </template>
</ul> </ul>
@ -18,12 +22,17 @@
<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" v-html="modules[1].form.des"></p> <p class="text"
v-html="modules[1].form.des"></p>
</div> </div>
<img class="pic" src="http://10.10.11.7/images/overviewSetup/1.png" alt=""> <img class="pic"
src="http://10.10.11.7/images/overviewSetup/1.png"
alt="">
</div> </div>
<div class="lg-bg"> <div class="lg-bg">
<img width="100%" :src="modules[2].form.pic" alt=""> <img width="100%"
:src="modules[2].form.pic"
alt="">
</div> </div>
</div> </div>
</div> </div>
@ -51,7 +60,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';
.tabs { .tabs {
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -65,8 +74,8 @@ export default {
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;
} }
} }
} }
@ -80,7 +89,7 @@ export default {
width: 1294px; width: 1294px;
padding: 9px 86px 29px 116px; padding: 9px 86px 29px 116px;
margin: 0 auto 50px; margin: 0 auto 50px;
background: #FCFCFC; background: #fcfcfc;
border-radius: 160px; border-radius: 160px;
.left { .left {
width: 705px; width: 705px;
@ -108,7 +117,7 @@ export default {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -128,11 +137,10 @@ export default {
} }
} }
} }
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -189,18 +197,6 @@ export default {
} }
} }
@media (max-width: 320px) { @media (max-width: 320px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -233,18 +229,6 @@ export default {
} }
} }
@media (min-width: 320px) and (max-width: 375px) { @media (min-width: 320px) and (max-width: 375px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -277,18 +261,6 @@ export default {
} }
} }
@media (min-width: 375px) and (max-width: 480px) { @media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -321,18 +293,6 @@ export default {
} }
} }
@media (min-width: 480px) and (max-width: 640px) { @media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 10rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -365,18 +325,6 @@ export default {
} }
} }
@media (min-width: 640px) and (max-width: 768px) { @media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 12rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -409,18 +357,6 @@ export default {
} }
} }
@media (min-width: 768px) and (max-width: 980px) { @media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 15rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;
@ -453,18 +389,6 @@ export default {
} }
} }
@media (min-width: 980px) and (max-width: 1200px) { @media (min-width: 980px) and (max-width: 1200px) {
.wrap {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 20rem;
left: 5rem;
}
}
}
.tab-content { .tab-content {
.survey { .survey {
padding: 1.25rem; padding: 1.25rem;

@ -2,7 +2,9 @@
<!-- 产业光源-产业光源概况 --> <!-- 产业光源-产业光源概况 -->
<div class="wrap"> <div class="wrap">
<div class="single-banner single-banner-overview"> <div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt=""> <img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts"> <div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6> <h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div> </div>
@ -10,7 +12,9 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template> </template>
</ul> </ul>
@ -18,12 +22,17 @@
<div class="survey"> <div class="survey">
<h6> <h6>
{{ modules[1].form.title }} {{ modules[1].form.title }}
<img class="title-bg" src="http://10.10.11.7/images/overviewIntro/2.png" alt=""> <img class="title-bg"
src="http://10.10.11.7/images/overviewIntro/2.png"
alt="">
</h6> </h6>
<p class="text" v-html="modules[1].form.des"></p> <p class="text"
v-html="modules[1].form.des"></p>
</div> </div>
<div class="lg-bg"> <div class="lg-bg">
<img width="100%" src="http://10.10.11.7/images/estate/3.png" alt=""> <img width="100%"
src="http://10.10.11.7/images/estate/3.png"
alt="">
</div> </div>
</div> </div>
</div> </div>
@ -51,7 +60,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';
.tabs { .tabs {
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -65,8 +74,8 @@ export default {
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;
} }
} }
} }
@ -104,20 +113,8 @@ export default {
width: 40%; width: 40%;
} }
@media (max-width: 1300px) { @media (max-width: 1300px) {
.wrap {
.single-banner {
.banner-img {
height: 35rem;
}
.texts {
top: 20rem;
left: 9rem;
}
}
}
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -133,60 +130,15 @@ export default {
width: 100%; width: 100%;
} }
.survey { .survey {
width: 100%; width: 95%;
padding: 80px 86px 29px 47%; padding: 80px 86px 29px 47%;
margin-bottom: 2rem; margin-bottom: 2rem;
} }
} }
@media (min-width: 320px) and (max-width: 375px) { @media (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
}
}
}
@media (max-width: 480px) {
.survey { .survey {
padding: 30px; padding: 30px;
background: none; background: none;
} }
} }
@media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
}
}
}
@media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 20rem;
}
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
}
}
}
</style> </style>

@ -1,7 +1,9 @@
<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" :src="modules[0].form.pic" alt=""> <img class="banner-img"
: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>
@ -9,7 +11,9 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template> </template>
</ul> </ul>
@ -17,22 +21,33 @@
<div class="inner"> <div class="inner">
<h2 class="wow fadeInLeft">{{ modules[1].form.title }}</h2> <h2 class="wow fadeInLeft">{{ 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" class="event"> <div v-if="modules[2].list.length"
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" :key="i" :class="{active: curYear == i}" @click="yearClick(i)">{{ item.title }}</li> <li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
</template> </template>
</ul> </ul>
<div v-if="modules[2].list[curYear]" class="right"> <div v-if="modules[2].list[curYear]"
class="right">
<h6 class="year">{{ modules[2].list[curYear].title }}</h6> <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" :key="j" :class="{'cursor-pointer': isLink(e.link.linkName)}" @click="openLink(e)"> <li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
@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>
<img v-if="e.pic" :src="e.pic" alt="" class="pic"> <img v-if="e.pic"
:src="e.pic"
alt=""
class="pic">
</li> </li>
</template> </template>
</ul> </ul>
@ -68,7 +83,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';
.wrap { .wrap {
background: url(http://10.10.11.7/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat, background: url(http://10.10.11.7/images/overviewDevHistory/1.png) (right 505px) / auto no-repeat,
url(http://10.10.11.7/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat; url(http://10.10.11.7/images/overviewDevHistory/2.png) (left bottom) / auto no-repeat;
@ -81,7 +96,7 @@ export default {
top: auto !important; top: auto !important;
bottom: 2rem; bottom: 2rem;
h6 { h6 {
font-size: 2.16rem font-size: 2.16rem;
} }
} }
} }
@ -90,16 +105,16 @@ export default {
justify-content: center; justify-content: center;
box-shadow: 0px 2px 10px 0px rgba(223, 223, 223, 0.28); box-shadow: 0px 2px 10px 0px rgba(223, 223, 223, 0.28);
li { li {
padding: 1.25rem .95rem; padding: 1.25rem 0.95rem;
margin: 0 .5rem; margin: 0 0.5rem;
font-size: 1.05rem; font-size: 1.05rem;
color: #333; color: #333;
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;
} }
} }
} }
@ -110,14 +125,14 @@ export default {
font-size: 1.75rem; font-size: 1.75rem;
font-family: PingFangSC-Semibold, PingFang SC; font-family: PingFangSC-Semibold, PingFang SC;
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;
font-family: PingFangSC-Light, PingFang SC; font-family: PingFangSC-Light, PingFang SC;
font-weight: 300; font-weight: 300;
color: #E3E3E3; color: #e3e3e3;
} }
} }
.event { .event {
@ -125,7 +140,7 @@ export default {
justify-content: center; justify-content: center;
.time { .time {
width: 12.5rem; width: 12.5rem;
padding-right: .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;
@ -139,12 +154,12 @@ export default {
font-weight: 600; font-weight: 600;
font-family: SFProDisplay-Semibold, SFProDisplay; font-family: SFProDisplay-Semibold, SFProDisplay;
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;
@ -164,7 +179,7 @@ export default {
font-size: 2.35rem; font-size: 2.35rem;
font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN; font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
font-weight: 800; font-weight: 800;
color: #1A81F4; color: #1a81f4;
} }
.list { .list {
border-top: 1px solid #ddd; border-top: 1px solid #ddd;
@ -180,7 +195,7 @@ export default {
} }
.date { .date {
width: 31.25rem; width: 31.25rem;
margin-bottom: .75rem; margin-bottom: 0.75rem;
font-size: 1.26rem; font-size: 1.26rem;
font-family: PingFangSC-Semibold, PingFang SC; font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600; font-weight: 600;
@ -190,7 +205,7 @@ export default {
-webkit-line-clamp: 3; -webkit-line-clamp: 3;
text-overflow: ellipsis; text-overflow: ellipsis;
overflow: hidden; overflow: hidden;
word-break: break-all word-break: break-all;
} }
.text { .text {
font-size: 1.08rem; font-size: 1.08rem;
@ -214,7 +229,7 @@ export default {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -229,6 +244,7 @@ export default {
font-size: 1.35rem; font-size: 1.35rem;
} }
} }
.block { .block {
padding: 1.25rem 0; padding: 1.25rem 0;
.inner { .inner {
@ -265,280 +281,7 @@ export default {
} }
.pic { .pic {
width: 100%; width: 100%;
} height: auto;
}
}
}
}
}
}
}
@media (min-width: 280px) and (max-width: 1200px) {
.single-banner {
.banner-img {
height: 15rem;
}
}
}
@media (max-width: 320px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: 9.75rem;
}
}
}
}
}
}
}
}
@media (min-width: 320px) and (max-width: 375px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: 9.75rem;
}
}
}
}
}
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: 9.75rem;
}
}
}
}
}
}
}
}
@media (min-width: 480px) and (max-width: 640px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: 9.75rem;
}
}
}
}
}
}
}
}
@media (min-width: 640px) and (max-width: 768px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: 11.75rem;
}
}
}
}
}
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: auto
}
}
}
}
}
}
}
}
@media (min-width: 980px) and (max-width: 1200px) {
.wrap {
.banner-img {
height: 12rem;
}
.single-banner {
.texts {
bottom: 2rem !important;
left: 2rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
.tabs {
li {
padding: 1rem .5rem;
font-size: .85rem;
}
}
.block {
.inner {
.event {
.right {
.list {
li {
.pic {
width: 100%;
height: auto
} }
} }
} }

@ -1,7 +1,9 @@
<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" :src="modules[0].form.pic" alt=""> <img class="banner-img"
: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>
@ -9,7 +11,9 @@
<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}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li> <li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template> </template>
</ul> </ul>
@ -17,12 +21,17 @@
<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" v-html="modules[1].form.des"></p> <p class="text"
v-html="modules[1].form.des"></p>
</div> </div>
<img class="pic" src="http://10.10.11.7/images/overviewSetup/1.png" alt=""> <img class="pic"
src="http://10.10.11.7/images/overviewSetup/1.png"
alt="">
</div> </div>
<div class="lg-bg"> <div class="lg-bg">
<img width="100%" :src="modules[2].form.pic" alt=""> <img width="100%"
:src="modules[2].form.pic"
alt="">
</div> </div>
</div> </div>
@ -51,7 +60,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';
.single-banner { .single-banner {
.banner-img { .banner-img {
height: 24rem; height: 24rem;
@ -60,7 +69,7 @@ export default {
top: auto !important; top: auto !important;
bottom: 2rem; bottom: 2rem;
h6 { h6 {
font-size: 2.16rem font-size: 2.16rem;
} }
} }
} }
@ -77,8 +86,8 @@ export default {
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;
} }
} }
} }
@ -92,7 +101,7 @@ export default {
width: 1294px; width: 1294px;
padding: 9px 86px 29px 116px; padding: 9px 86px 29px 116px;
margin: 0 auto 50px; margin: 0 auto 50px;
background: #FCFCFC; background: #fcfcfc;
border-radius: 160px; border-radius: 160px;
.left { .left {
width: 705px; width: 705px;
@ -120,7 +129,7 @@ export default {
} }
@media (max-width: 1200px) { @media (max-width: 1200px) {
.tabs { .tabs {
overflow: hidden;; overflow: hidden;
overflow-x: auto; overflow-x: auto;
white-space: normal; white-space: normal;
justify-content: normal; justify-content: normal;
@ -132,11 +141,12 @@ export default {
.tab-content { .tab-content {
padding: 20px 0; padding: 20px 0;
.org { .org {
width: 100%; width: 95%;
padding: 15px; padding: 15px;
flex-direction: column; flex-direction: column;
.pic { .pic {
width: 100%; width: 100%;
height: auto;
} }
.left { .left {
width: 100%; width: 100%;
@ -144,147 +154,4 @@ export default {
} }
} }
} }
@media (min-width: 280px) and (max-width: 1200px) {
.single-banner {
.banner-img {
height: 15rem;
}
.texts{
top: 8rem !important;
left: 22rem !important;
}
}
}
@media (max-width: 320px) {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 9rem !important;
left: 8rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
.tab-content{
.org{
.pic {
width: 100%;
height: 13rem;
}
}
}
}
@media (min-width: 320px) and (max-width: 375px) {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 11rem !important;
left: 10rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 14rem !important;
left: 13rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
@media (min-width: 480px) and (max-width: 640px) {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 18rem !important;
left: 25rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
}
@media (min-width: 640px) and (max-width: 768px) {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 21rem !important;
left: 37rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
.tab-content{
.org{
.pic {
width: 100%;
height: 25rem;
}
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.single-banner {
.banner-img {
height: 28rem;
}
.texts {
top: 21rem !important;
left: 37rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
.tab-content{
.org{
.pic {
width: 100%;
height: 28rem;
}
}
}
}
@media (min-width: 980px) and (max-width: 1200px) {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 21rem !important;
left: 37rem !important;
.banner-title {
font-size: 1.5rem;
}
}
}
.tab-content{
.org{
.pic {
width: 100%;
height: 32rem;
}
}
}
}
</style> </style>

@ -1,4 +1,4 @@
@import "../var.scss"; @import '../var.scss';
.block { .block {
padding: 118px 0; padding: 118px 0;
.b-title { .b-title {
@ -10,7 +10,7 @@
color: #333333; color: #333333;
line-height: 60px; line-height: 60px;
text-align: center; text-align: center;
color: #1F1F1F; color: #1f1f1f;
&:after { &:after {
content: ''; content: '';
position: absolute; position: absolute;
@ -19,14 +19,14 @@
width: 136px; width: 136px;
height: 4px; height: 4px;
transform: translateX(-50%); transform: translateX(-50%);
background: #1583FF; background: #1583ff;
} }
} }
.intro { .intro {
margin-bottom: 80px; margin-bottom: 80px;
font-size: 1.6rem; font-size: 1.6rem;
text-align: center; text-align: center;
color: #5B5B5E; color: #5b5b5e;
line-height: 40px; line-height: 40px;
@include mul-ellipsis(2); @include mul-ellipsis(2);
} }
@ -91,10 +91,10 @@
@include mul-ellipsis(3); @include mul-ellipsis(3);
} }
.gray { .gray {
background-color: #F2F6F8; background-color: #f2f6f8;
} }
.arrow { .arrow {
transition: .3s; transition: 0.3s;
cursor: pointer; cursor: pointer;
} }
.all-link { .all-link {
@ -116,3 +116,109 @@
width: 80%; width: 80%;
} }
} }
@media (max-width: 1300px) {
.wrap {
.single-banner {
.banner-img {
height: 35rem;
}
.texts {
top: 20rem;
left: 9rem;
}
}
}
}
@media (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 20rem;
left: 5rem;
}
}
}
}
@media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 15rem;
left: 5rem;
}
}
}
}
@media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 12rem;
left: 5rem;
}
}
}
}
@media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 10rem;
left: 5rem;
}
}
}
}
@media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
}
@media (min-width: 320px) and (max-width: 375px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
}
@media (max-width: 320px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
}

Loading…
Cancel
Save