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

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

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

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

@ -1,10 +1,15 @@
<template>
<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">
<el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]" @click="openLink(item)">
<img :src="item.pic" alt="">
<el-carousel-item v-if="item.pic && item.isEnable"
:key="i">
<div :class="['banner-item', {'cursor-pointer': isLink(item.link.linkName)}]"
@click="openLink(item)">
<img :src="item.pic"
alt="">
<p class="banner-name">{{ item.title }}</p>
</div>
</el-carousel-item>
@ -15,24 +20,34 @@
<div class="inner">
<h6>{{ modules[1].form.title }}</h6>
<p class="en">{{ modules[1].form.subTitle }}</p>
<div class="card" v-html="modules[1].form.des"></div>
<div class="card"
v-html="modules[1].form.des"></div>
<div class="flex textBox">
<div class="left">
<div class="des" v-html="modules[2].form.des"></div>
<div class="des"
v-html="modules[2].form.des"></div>
</div>
<img class="pic" :src="modules[2].form.pic" alt="">
<img class="pic"
:src="modules[2].form.pic"
alt="">
</div>
</div>
</div>
<div class="intro">
<img class="bg" src="http://10.10.11.7/images/device/7.png" alt="">
<img class="pic" :src="modules[3].form.pic" alt="">
<img class="bg"
src="http://10.10.11.7/images/device/7.png"
alt="">
<img class="pic"
:src="modules[3].form.pic"
alt="">
</div>
<div class="unit">
<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>
</template>
@ -73,7 +88,7 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import "../../styles/page/page.scss";
@import '../../styles/page/page.scss';
.wrap {
background: url(http://10.10.11.7/images/device/4.png) bottom right/auto no-repeat;
/deep/ .el-carousel {
@ -108,14 +123,13 @@ export default {
.share {
position: relative;
.inner {
width: 90%;
width: 100%;
max-width: 1323px;
.textBox {
margin-top: 12.125rem;
position: absolute;
width: 85%;
right: 0;
top: 16.125rem;
top: 26rem;
.left {
flex-grow: 1;
}
@ -140,25 +154,25 @@ export default {
font-size: 2.2rem;
font-family: PingFangSC-Light, PingFang SC;
font-weight: 300;
color: #E3E3E3;
color: #e3e3e3;
}
.card {
position: absolute;
left: 0;
max-width: 1671px;
width: 85%;
padding: 1.6rem 2.9rem 1.6rem 16%;
padding: 1.6rem 2.9rem 1.6rem 14%;
font-size: 1.06rem;
font-family: PingFangSC-Medium, PingFang SC;
border-radius: 0 6rem 0 0;
font-weight: 500;
color: #FFFFFF;
color: #ffffff;
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 {
margin-top: 25px;
font-size: .98rem;
font-size: 0.98rem;
-webkit-line-clamp: inherit;
color: #333;
line-height: 37px;
@ -196,365 +210,87 @@ export default {
padding-bottom: 60px;
margin: 0 auto;
h6 {
padding-left: .93rem;
margin-bottom: .93rem;
font-size: .88rem;
padding-left: 0.93rem;
margin-bottom: 0.93rem;
font-size: 0.88rem;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #2A2A2A;
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%;
color: #2a2a2a;
border-left: 4px solid #1583ff;
}
}
@media (max-width: 1400px) {
.share {
.card {
width: 100% !important;position: relative !important;margin-left: -50px;;
}
.textBox{
margin-top: 40px !important;
position: relative;
margin-left: -2.5%;
}
.inner {
max-width: none;
width: 95%;
.textBox {
position: static;
display: flex;
flex-direction: column;
align-items: flex-end;
margin-left: 15%;
.left {
width: 100%;
.des {
-webkit-line-clamp: 100
-webkit-line-clamp: 100;
}
}
}
}
.pic {
width: 100%;
height: auto;
width: 50%;
margin-top: 20px;
}
}
.bg {
width:100%
width: 100%;
}
.intro {
height: 45rem;
height: 36rem;
margin-top: 0;
.pic {
width: 100% !important;
width: 100%;
left: 0;
top: 6%;
}
}
}
@media (min-width: 280px) and (max-width: 375px) {
body{
width: 100% !important;
}
.block{
padding: 50px 0;
}
.unit {
width: 100%;
width: 95%;
img {
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 {
.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 {
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 {
.card {
font-size: .9rem;
line-height: 1.1rem;
}
.inner {
.textBox {
top:23.125rem !important;
.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;
margin: 0 auto;
}
.textBox {
top:23.125rem !important;
.des {
line-height: 1.1rem;
}
.left {
margin-right: 0;
}
}
.intro {
margin-top: 63rem;
.bg {
height: 30rem;
}
.pic {
height: auto;
}
}
}
@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;
}
.bg,
.pic {
position: static;
width: 100%;
height: auto;
}
}

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

@ -2,7 +2,9 @@
<!-- 产业光源-大事记 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -10,7 +12,9 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -19,22 +23,32 @@
<h2 class="wow fadeInLeft">大事记</h2>
<p class="en">DEVELOPMENT HISTORY</p>
<div v-if="modules[1].list.length" class="event">
<div v-if="modules[1].list.length"
class="event">
<ul class="time">
<template v-for="(item, i) in modules[1].list">
<li v-if="item.isEnable" :key="i" :class="{active: curYear == i}" @click="yearClick(i)">{{ item.title }}</li>
<li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
</template>
</ul>
<div class="right">
<h6 class="year">{{ modules[1].list[curYear].title }}</h6>
<ul class="list">
<template v-for="(e, j) in modules[1].list[curYear].list">
<li v-if="e.isEnable" :key="j" :class="{'cursor-pointer': isLink(e.link.linkName)}" @click="openLink(e)">
<li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
@click="openLink(e)">
<div class="texts">
<p class="date">{{ e.title }}</p>
<p class="text">{{ e.des }}</p>
</div>
<img v-if="e.pic" :src="e.pic" alt="" class="pic">
<img v-if="e.pic"
:src="e.pic"
alt=""
class="pic">
</li>
</template>
</ul>
@ -70,7 +84,7 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import "../../../styles/page/page.scss";
@import '../../../styles/page/page.scss';
.wrap {
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;
@ -88,8 +102,8 @@ export default {
text-shadow: 0px 2px 14px rgba(167, 167, 167, 0.26);
cursor: pointer;
&.active {
color: #1583FF;
border-bottom-color: #1583FF;
color: #1583ff;
border-bottom-color: #1583ff;
}
}
}
@ -99,14 +113,14 @@ export default {
font-size: 2rem;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #1C1C1C;
color: #1c1c1c;
}
.en {
margin: -15px 0 40px;
font-size: 2rem;
font-family: PingFangSC-Light, PingFang SC;
font-weight: 300;
color: #E3E3E3;
color: #e3e3e3;
}
}
.event {
@ -128,12 +142,12 @@ export default {
font-weight: 600;
font-family: SFProDisplay-Semibold, SFProDisplay;
color: #666;
box-shadow: inset 0px -1px 0px 0px #DDDDDD;
box-shadow: inset 0px -1px 0px 0px #dddddd;
cursor: pointer;
&.active {
font-weight: 800;
color: #1A81F4;
background: linear-gradient(90deg, #FFFFFF 0%, #F3F8FF 100%);
color: #1a81f4;
background: linear-gradient(90deg, #ffffff 0%, #f3f8ff 100%);
&:before {
content: '';
width: 18px;
@ -152,7 +166,7 @@ export default {
font-size: 3.2rem;
font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
font-weight: 800;
color: #1A81F4;
color: #1a81f4;
}
.list {
border-top: 1px solid #ddd;
@ -195,7 +209,7 @@ export default {
}
@media (max-width: 1200px) {
.tabs {
overflow: hidden;;
overflow: hidden;
overflow-x: auto;
white-space: normal;
justify-content: normal;
@ -249,18 +263,6 @@ export default {
}
}
@media (max-width: 320px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -287,18 +289,6 @@ export default {
}
}
@media (min-width: 320px) and (max-width: 375px) {
.wrap {
.single-banner {
.banner-img {
height: 13rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -325,18 +315,6 @@ export default {
}
}
@media (min-width: 375px) and (max-width: 480px) {
.wrap {
.single-banner {
.banner-img {
height: 15rem;
}
.texts {
top: 6rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -363,18 +341,6 @@ export default {
}
}
@media (min-width: 480px) and (max-width: 640px) {
.wrap {
.single-banner {
.banner-img {
height: 18rem;
}
.texts {
top: 10rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -401,18 +367,6 @@ export default {
}
}
@media (min-width: 640px) and (max-width: 768px) {
.wrap {
.single-banner {
.banner-img {
height: 22rem;
}
.texts {
top: 12rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -439,18 +393,6 @@ export default {
}
}
@media (min-width: 768px) and (max-width: 980px) {
.wrap {
.single-banner {
.banner-img {
height: 25rem;
}
.texts {
top: 15rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;
@ -477,18 +419,6 @@ export default {
}
}
@media (min-width: 980px) and (max-width: 1200px) {
.wrap {
.single-banner {
.banner-img {
height: 32rem;
}
.texts {
top: 20rem;
left: 5rem;
}
}
}
.tab-content {
.survey {
padding: 1.25rem;

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

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

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

@ -2,7 +2,9 @@
<!-- 产业光源-产业光源概况 -->
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -10,7 +12,9 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -18,12 +22,17 @@
<div class="survey">
<h6>
{{ 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>
<p class="text" v-html="modules[1].form.des"></p>
<p class="text"
v-html="modules[1].form.des"></p>
</div>
<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>
@ -51,7 +60,7 @@ export default {
<style lang="scss" scoped>
@import url(../../../plugins/wow/animate.css);
@import "../../../styles/page/page.scss";
@import '../../../styles/page/page.scss';
.tabs {
display: flex;
justify-content: center;
@ -65,8 +74,8 @@ export default {
text-shadow: 0px 2px 14px rgba(167, 167, 167, 0.26);
cursor: pointer;
&.active {
color: #1583FF;
border-bottom-color: #1583FF;
color: #1583ff;
border-bottom-color: #1583ff;
}
}
}
@ -104,20 +113,8 @@ export default {
width: 40%;
}
@media (max-width: 1300px) {
.wrap {
.single-banner {
.banner-img {
height: 35rem;
}
.texts {
top: 20rem;
left: 9rem;
}
}
}
.tabs {
overflow: hidden;;
overflow: hidden;
overflow-x: auto;
white-space: normal;
justify-content: normal;
@ -133,60 +130,15 @@ export default {
width: 100%;
}
.survey {
width: 100%;
width: 95%;
padding: 80px 86px 29px 47%;
margin-bottom: 2rem;
}
}
@media (min-width: 320px) and (max-width: 375px) {
.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) {
@media (max-width: 768px) {
.survey {
padding: 30px;
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>

@ -1,7 +1,9 @@
<template>
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -9,7 +11,9 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -17,22 +21,33 @@
<div class="inner">
<h2 class="wow fadeInLeft">{{ modules[1].form.title }}</h2>
<p class="en">{{ modules[1].form.des }}</p>
<div v-if="modules[2].list.length" class="event">
<div v-if="modules[2].list.length"
class="event">
<ul class="time">
<template v-for="(item, i) in modules[2].list">
<li v-if="item.isEnable" :key="i" :class="{active: curYear == i}" @click="yearClick(i)">{{ item.title }}</li>
<li v-if="item.isEnable"
:key="i"
:class="{active: curYear == i}"
@click="yearClick(i)">{{ item.title }}</li>
</template>
</ul>
<div v-if="modules[2].list[curYear]" class="right">
<div v-if="modules[2].list[curYear]"
class="right">
<h6 class="year">{{ modules[2].list[curYear].title }}</h6>
<ul class="list">
<template v-for="(e, j) in modules[2].list[curYear].list">
<li v-if="e.isEnable" :key="j" :class="{'cursor-pointer': isLink(e.link.linkName)}" @click="openLink(e)">
<li v-if="e.isEnable"
:key="j"
:class="{'cursor-pointer': isLink(e.link.linkName)}"
@click="openLink(e)">
<div class="texts">
<p class="date">{{ e.title }}</p>
<p class="text">{{ e.des }}</p>
</div>
<img v-if="e.pic" :src="e.pic" alt="" class="pic">
<img v-if="e.pic"
:src="e.pic"
alt=""
class="pic">
</li>
</template>
</ul>
@ -68,7 +83,7 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import "../../styles/page/page.scss";
@import '../../styles/page/page.scss';
.wrap {
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;
@ -81,7 +96,7 @@ export default {
top: auto !important;
bottom: 2rem;
h6 {
font-size: 2.16rem
font-size: 2.16rem;
}
}
}
@ -90,16 +105,16 @@ export default {
justify-content: center;
box-shadow: 0px 2px 10px 0px rgba(223, 223, 223, 0.28);
li {
padding: 1.25rem .95rem;
margin: 0 .5rem;
padding: 1.25rem 0.95rem;
margin: 0 0.5rem;
font-size: 1.05rem;
color: #333;
border-bottom: 4px solid transparent;
text-shadow: 0px 2px 14px rgba(167, 167, 167, 0.26);
cursor: pointer;
&.active {
color: #1583FF;
border-bottom-color: #1583FF;
color: #1583ff;
border-bottom-color: #1583ff;
}
}
}
@ -110,14 +125,14 @@ export default {
font-size: 1.75rem;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #1C1C1C;
color: #1c1c1c;
}
.en {
margin: 0 0 2rem;
font-size: 1.75rem;
font-family: PingFangSC-Light, PingFang SC;
font-weight: 300;
color: #E3E3E3;
color: #e3e3e3;
}
}
.event {
@ -125,7 +140,7 @@ export default {
justify-content: center;
.time {
width: 12.5rem;
padding-right: .625rem;
padding-right: 0.625rem;
margin-right: 1.25rem;
flex-shrink: 1;
border-right: 1px solid #ddd;
@ -139,12 +154,12 @@ export default {
font-weight: 600;
font-family: SFProDisplay-Semibold, SFProDisplay;
color: #666;
box-shadow: inset 0px -1px 0px 0px #DDDDDD;
box-shadow: inset 0px -1px 0px 0px #dddddd;
cursor: pointer;
&.active {
font-weight: 800;
color: #1A81F4;
background: linear-gradient(90deg, #FFFFFF 0%, #F3F8FF 100%);
color: #1a81f4;
background: linear-gradient(90deg, #ffffff 0%, #f3f8ff 100%);
&:before {
content: '';
width: 18px;
@ -164,7 +179,7 @@ export default {
font-size: 2.35rem;
font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
font-weight: 800;
color: #1A81F4;
color: #1a81f4;
}
.list {
border-top: 1px solid #ddd;
@ -180,7 +195,7 @@ export default {
}
.date {
width: 31.25rem;
margin-bottom: .75rem;
margin-bottom: 0.75rem;
font-size: 1.26rem;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
@ -190,7 +205,7 @@ export default {
-webkit-line-clamp: 3;
text-overflow: ellipsis;
overflow: hidden;
word-break: break-all
word-break: break-all;
}
.text {
font-size: 1.08rem;
@ -214,7 +229,7 @@ export default {
}
@media (max-width: 1200px) {
.tabs {
overflow: hidden;;
overflow: hidden;
overflow-x: auto;
white-space: normal;
justify-content: normal;
@ -229,6 +244,7 @@ export default {
font-size: 1.35rem;
}
}
.block {
padding: 1.25rem 0;
.inner {
@ -265,280 +281,7 @@ export default {
}
.pic {
width: 100%;
}
}
}
}
}
}
}
}
@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
height: auto;
}
}
}

@ -1,7 +1,9 @@
<template>
<div class="wrap">
<div class="single-banner single-banner-overview">
<img class="banner-img" :src="modules[0].form.pic" alt="">
<img class="banner-img"
:src="modules[0].form.pic"
alt="">
<div class="texts">
<h6 class="banner-title">{{ modules[0].form.title }}</h6>
</div>
@ -9,7 +11,9 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.id == active}" :key="i" @click="tabChange(item)">{{ item.columnName }}</li>
<li :class="{active: item.id == active}"
:key="i"
@click="tabChange(item)">{{ item.columnName }}</li>
</template>
</ul>
@ -17,12 +21,17 @@
<div class="org">
<div class="left">
<h6>{{ modules[1].form.title }}</h6>
<p class="text" v-html="modules[1].form.des"></p>
<p class="text"
v-html="modules[1].form.des"></p>
</div>
<img class="pic" src="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 class="lg-bg">
<img width="100%" :src="modules[2].form.pic" alt="">
<img width="100%"
:src="modules[2].form.pic"
alt="">
</div>
</div>
@ -51,7 +60,7 @@ export default {
<style lang="scss" scoped>
@import url(../../plugins/wow/animate.css);
@import "../../styles/page/page.scss";
@import '../../styles/page/page.scss';
.single-banner {
.banner-img {
height: 24rem;
@ -60,7 +69,7 @@ export default {
top: auto !important;
bottom: 2rem;
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);
cursor: pointer;
&.active {
color: #1583FF;
border-bottom-color: #1583FF;
color: #1583ff;
border-bottom-color: #1583ff;
}
}
}
@ -92,7 +101,7 @@ export default {
width: 1294px;
padding: 9px 86px 29px 116px;
margin: 0 auto 50px;
background: #FCFCFC;
background: #fcfcfc;
border-radius: 160px;
.left {
width: 705px;
@ -120,7 +129,7 @@ export default {
}
@media (max-width: 1200px) {
.tabs {
overflow: hidden;;
overflow: hidden;
overflow-x: auto;
white-space: normal;
justify-content: normal;
@ -132,11 +141,12 @@ export default {
.tab-content {
padding: 20px 0;
.org {
width: 100%;
width: 95%;
padding: 15px;
flex-direction: column;
.pic {
width: 100%;
height: auto;
}
.left {
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>

@ -1,4 +1,4 @@
@import "../var.scss";
@import '../var.scss';
.block {
padding: 118px 0;
.b-title {
@ -10,7 +10,7 @@
color: #333333;
line-height: 60px;
text-align: center;
color: #1F1F1F;
color: #1f1f1f;
&:after {
content: '';
position: absolute;
@ -19,14 +19,14 @@
width: 136px;
height: 4px;
transform: translateX(-50%);
background: #1583FF;
background: #1583ff;
}
}
.intro {
margin-bottom: 80px;
font-size: 1.6rem;
text-align: center;
color: #5B5B5E;
color: #5b5b5e;
line-height: 40px;
@include mul-ellipsis(2);
}
@ -91,10 +91,10 @@
@include mul-ellipsis(3);
}
.gray {
background-color: #F2F6F8;
background-color: #f2f6f8;
}
.arrow {
transition: .3s;
transition: 0.3s;
cursor: pointer;
}
.all-link {
@ -116,3 +116,109 @@
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