1549469775 6 years ago
parent
commit
691bbc0c6d
  1. 22
      assets/_global.scss
  2. 40
      assets/pc-1366.scss
  3. 60
      assets/pc-1920.scss
  4. 78
      assets/pc-768.scss
  5. 43
      components/panel/index.vue
  6. 27
      components/panel/pc.scss
  7. 91
      nuxt.config.js
  8. 91
      pages-child/desc/index.vue
  9. 40
      pages-child/desc/pc.scss
  10. 55
      pages-child/header/index.vue
  11. 15
      pages-child/header/pc.scss
  12. 211
      pages/index.vue
  13. 160
      pages/pc.scss
  14. BIN
      static/image/left.png
  15. BIN
      static/image/right.png
  16. 0
      static/image/xu.png
  17. 77
      static/js/flexible.js

22
assets/_global.scss

@ -17,9 +17,21 @@ body {
transform: translateY(-50%);
}
}
.m-auto {
margin: 0 auto;
.m-auto {
margin: 0 auto;
}
.ls5 {
letter-spacing: 5px
}
.clearfix {
&::after {
content: "";
height: 0;
display: block;
clear: both;
}
.ls5{
letter-spacing: 5px
}
}

40
assets/pc-1366.scss

@ -1,5 +1,6 @@
@import "./_global.scss";
$red: #ff0000;
html,
body {
width: 100%;
@ -17,31 +18,18 @@ body {
transform: translateY(-50%);
}
}
$layerWidth:1366px;
$designWidth:1920px;
.s1920 .layer {
width: 990px;
}
@function bq($v) {
@return $v*$layerWidth/$designWidth+px;
}
$layerWidth:1366px;
$designWidth:1920px;
.m-auto {
margin: 0 auto;
}
.f18d_b{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #2078be;
}
.f18d_g{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #4b4b4b;
}
.s1920 .layer {
width: 85%;
}
@function bq($v, $f:16) {
@return $v/$f+em;
}
.m-auto {
margin: 0 auto;
}

60
assets/pc-1920.scss

@ -18,34 +18,38 @@ body {
transform: translateY(-50%);
}
}
$layerWidth:1920px;
$designWidth:1920px;
.s1920 .layer {
width: 1366px;
}
@function bq($v) {
@return $v*$layerWidth/$designWidth+px;
}
$layerWidth:1920px;
$designWidth:1920px;
.s1366 .layer {
width: 1366px;
}
.s1920 .layer {
width: 1366px;
}
.m-auto {
margin: 0 auto;
}
.f18d_b{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #2078be;
}
.f18d_g{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #4b4b4b;
}
@function bq($v, $f:16) {
@return $v/$f+em;
}
.s1366 .layer {
width: 85%;
}
.m-auto {
margin: 0 auto;
}
.f18d_b {
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #2078be;
}
.f18d_g {
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #4b4b4b;
}

78
assets/pc-768.scss

@ -1,5 +1,6 @@
@import "./_global.scss";
$red: #ff0000;
html,
body {
width: 100%;
@ -17,43 +18,48 @@ body {
transform: translateY(-50%);
}
}
$layerWidth:1920px;
$designWidth:1920px;
@media screen and (max-width:1024px) {
.s1920{
width: $layerWidth;
}
}
.s1920{
width: 1920px;
}
.s1920 .layer {
width: 1366px;
}
@function bq($v) {
@return $v*$layerWidth/$designWidth+px;
}
$layerWidth:1366px;
$designWidth:1920px;
.m-auto {
margin: 0 auto;
}
.p-auto {
padding: 0 auto;
@media screen and (max-width:1024px) {
.s1920 {
width: $layerWidth;
}
}
.f18d_b{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #2078be;
}
.f18d_g{
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #4b4b4b;
}
.s1920 {
width: 100%;
}
.s1920 .layer {
width: 100%;
}
@function bq($v, $f:16) {
@return $v/$f+em;
}
.m-auto {
margin: 0 auto;
}
.p-auto {
padding: 0 auto;
}
.f18d_b {
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #2078be;
}
.f18d_g {
font-size: bq(18);
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #4b4b4b;
}

43
components/panel/index.vue

@ -1,30 +1,31 @@
<template>
<div class="layer m-auto panel">
<h2>{{vtitle}}</h2>
<div class="panel__desc">
<div class="panel__desc__word">{{vdesc}}</div>
</div>
<slot></slot>
<div class="panel" :style="{'backgroundColor':color?color:'#ffffff'}">
<div class="panel__wrapper layer m-auto">
<h2>{{vtitle}}</h2>
<div class="panel__desc">
<div class="panel__desc__word">{{vdesc}}</div>
</div>
<slot></slot>
</div>
</div>
</template>
<script>
export default {
props:['vtitle','vdesc'],
}
export default {
props: ['vtitle', 'vdesc', 'color'],
}
</script>
<style lang="scss" scoped>
@media screen and (min-width:1440px){
@import '@/assets/pc-1920.scss';
@import './pc.scss';
}
@media screen and (min-width:768px) and (max-width:1440px) {
@import '@/assets/pc-1366.scss';
@import './pc.scss';
@media screen and (min-width: 1440px) {
@import "@/assets/pc-1920.scss";
@import "./pc.scss";
}
@media screen and (max-width:768px) {
@import '@/assets/pc-768.scss';
@import './pc.scss';
@media screen and (min-width: 768px) and (max-width: 1440px) {
@import "@/assets/pc-1366.scss";
@import "./pc.scss";
}
@media screen and (max-width: 768px) {
@import "@/assets/pc-768.scss";
@import "./pc.scss";
}
</style>

27
components/panel/pc.scss

@ -1,13 +1,16 @@
.panel {
margin-top: 59px;
padding-top: bq(59);
padding-bottom: bq(59);
text-align: center;
color: #131720;
.panel__wrapper {
overflow: visible;
}
h2 {
font-size: bq(36);
margin-bottom: 15px;
margin-bottom: bq(15);
}
.panel__desc {
@ -17,27 +20,29 @@
.panel__desc__word {
font-size: bq(18);
position: relative;
color: #4B4B4B;
&::before {
content: "";
position: absolute;
left: -75%;
left: bq(-100, 18);
top: 50%;
transform: translateY(-50%);
width: bq(83);
height: 1px;
background-color: #b5b5b5;
height: 2px;
background-color: rgba(181, 181, 181, 1);
}
&::after {
content: "";
position: absolute;
right: -75%;
right: bq(-100, 18);
top: 50%;
transform: translateY(-50%);
width: bq(83);
width: bq(83, 18);
height: 1px;
background-color: #b5b5b5;
background-color: rgba(181, 181, 181, 1);
}
}
}
}
}

91
nuxt.config.js

@ -1,64 +1,75 @@
export default {
mode: 'universal',
/*
** Headers of the page
*/
** Headers of the page
*/
head: {
title: process.env.npm_package_name || '',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1, maximum-scale=1.0, minimum-scale=1.0' },
{ hid: 'description', name: 'description', content: process.env.npm_package_description || '' }
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
],
script:[
{src:'flexible.js',type:"text/javascript",charset:'utf-8'}
meta: [{
charset: 'utf-8'
},
{
name: 'viewport',
content: 'width=device-width, initial-scale=1, maximum-scale=1.0, minimum-scale=1.0'
},
{
hid: 'description',
name: 'description',
content: process.env.npm_package_description || ''
}
],
link: [{
rel: 'icon',
type: 'image/x-icon',
href: '/favicon.ico'
}],
script: [{
src: '/js/flexible.js',
type: "text/javascript",
charset: 'utf-8'
}],
},
/*
** Customize the progress-bar color
*/
loading: { color: '#fff' },
** Customize the progress-bar color
*/
loading: {
color: '#fff'
},
/*
** Global CSS
*/
** Global CSS
*/
css: [
'~assets/reset.css',
'swiper/dist/css/swiper.css'
],
/*
** Plugins to load before mounting the App
*/
plugins: [
{
src:"@/plugins/vue-awesome-swiper",ssr:false
** Plugins to load before mounting the App
*/
plugins: [{
src: "@/plugins/vue-awesome-swiper",
ssr: false
},
],
/*
** Nuxt.js dev-modules
*/
devModules: [
],
** Nuxt.js dev-modules
*/
devModules: [],
/*
** Nuxt.js modules
*/
modules: [
],
** Nuxt.js modules
*/
modules: [],
/*
** Build configuration
*/
** Build configuration
*/
build: {
/*
** You can extend webpack config here
*/
extend (config, ctx) {
** You can extend webpack config here
*/
extend(config, ctx) {
// config.resolve.alias[0]
},
postcss:[
postcss: [
// require('postcss-pxtorem')({
// rootValue: 200,
// propList: ['*']
@ -67,6 +78,6 @@ export default {
// browsers: ['Android >= 4.0', 'iOS >= 7']
// })
]
}
}
}

91
pages-child/desc/index.vue

@ -1,53 +1,54 @@
<template>
<div class="wrapper">
<ul class="layer m-auto descicon">
<li class="item">
<div class="icon i0">
</div>
<div class="word">
<p class="word__titile">技术VC</p>
<p class="word__desc">(技术支持企业资源整合)</p>
</div>
</li>
<li class="item">
<div class="icon i1">
</div>
<div class="word">
<p class="word__titile">10+</p>
<p class="word__desc">(技术沉淀团队 )</p>
</div>
</li>
<li class="item">
<div class="icon i2">
</div>
<div class="word">
<p class="word__titile">100+</p>
<p class="word__desc">(人精英团队 )</p>
</div>
</li>
<li class="item">
<div class="icon i3">
</div>
<div class="word">
<p class="word__titile">行业口碑</p>
<p class="word__desc">(评价极佳)</p>
</div>
</li>
</ul>
</div>
<div class="wrapper">
<div class="center_wraper"></div>
<ul class=" descicon layer m-auto clearfix">
<li class="item">
<div class="icon i0">
</div>
<div class="word">
<p class="word__titile">技术VC</p>
<p class="word__desc">(技术支持企业资源整合)</p>
</div>
</li>
<li class="item">
<div class="icon i1">
</div>
<div class="word">
<p class="word__titile">10+</p>
<p class="word__desc">(技术沉淀团队 )</p>
</div>
</li>
<li class="item">
<div class="icon i2">
</div>
<div class="word">
<p class="word__titile">100+</p>
<p class="word__desc">(人精英团队 )</p>
</div>
</li>
<li class="item">
<div class="icon i3">
</div>
<div class="word">
<p class="word__titile">行业口碑</p>
<p class="word__desc">(评价极佳)</p>
</div>
</li>
</ul>
</div>
</template>
<style lang='scss'>
@media screen and (min-width:1440px) {
@import '@/assets/pc-1920.scss';
@import './pc.scss';
@media screen and (min-width: 1440px) {
@import "@/assets/pc-1920.scss";
@import "./pc.scss";
}
@media screen and (min-width:768px) and (max-width:1440px) {
@import '@/assets/pc-1366.scss';
@import './pc.scss';
@media screen and (min-width: 768px) and (max-width: 1440px) {
@import "@/assets/pc-1366.scss";
@import "./pc.scss";
}
@media screen and (max-width:768px) {
@import '@/assets/pc-768.scss';
@import './pc.scss';
@media screen and (max-width: 768px) {
@import "@/assets/pc-768.scss";
@import "./pc.scss";
}
</style>

40
pages-child/desc/pc.scss

@ -1,53 +1,65 @@
.wrapper{
.wrapper {
border-bottom: solid 1px #e2e2e2;
.descicon {
height: bq(105);
display: flex;
// min-height: bq(105);
// display: flex;
// display: inline-block;
// margin: 0 auto;
.item {
float: left;
display: flex;
align-items: center;
width: bq(273+156);
flex-direction: row;
width: bq(273+60);
padding: bq(28) 0;
.icon {
width: bq(33);
height: bq(33);
margin: 0 bq(31);
}
.i0{
.i0 {
background-image: url('/image/icon0.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.i1{
.i1 {
background-image: url('/image/icon1.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.i2{
.i2 {
background-image: url('/image/icon2.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.i3{
.i3 {
background-image: url('/image/icon3.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.word {
line-height: bq(30 );
line-height: bq(30);
.word__titile {
color: #3175bb;
font-size: bq(22);
}
.word__desc {
white-space: nowrap;
font-size: bq(18);
color: #8f8f8f;
}
}
}
}
}
}

55
pages-child/header/index.vue

@ -1,35 +1,34 @@
<template>
<div class="header layer m-auto">
<div class="logo">华谦官网</div>
<div class="hr border-right"></div>
<div class="desc">
<div>区块链</div>
<div>Block Chain + Professional Technology Platform</div>
</div>
<ul class="navbar">
<li class="navbar__item">首页</li>
<li class="navbar__item">区块链+</li>
<li class="navbar__item">短视频直播</li>
<li class="navbar__item">商城系统</li>
<li class="navbar__item">棋牌系统</li>
<li class="navbar__item">团队介绍</li>
<li class="navbar__item">企业愿景</li>
<li class="navbar__item">关于我们</li>
</ul>
<div class="header layer m-auto">
<div class="logo">华谦官网</div>
<div class="hr border-right"></div>
<div class="header__desc">
<div>区块链</div>
<div>Block Chain + Professional Technology Platform</div>
</div>
<ul class="navbar">
<li class="navbar__item">首页</li>
<li class="navbar__item">区块链+</li>
<li class="navbar__item">短视频直播</li>
<li class="navbar__item">商城系统</li>
<li class="navbar__item">棋牌系统</li>
<li class="navbar__item">团队介绍</li>
<li class="navbar__item">企业愿景</li>
<li class="navbar__item">关于我们</li>
</ul>
</div>
</template>
<style lang='scss'>
@media screen and (min-width:1440px){
@import '@/assets/pc-1920.scss';
@import './pc.scss';
}
@media screen and (min-width:768px) and (max-width:1440px) {
@import '@/assets/pc-1366.scss';
@import './pc.scss';
@media screen and (min-width: 1440px) {
@import "@/assets/pc-1920.scss";
@import "./pc.scss";
}
@media screen and (max-width:768px) {
@import '@/assets/pc-768.scss';
@import './pc.scss';
@media screen and (min-width: 768px) and (max-width: 1440px) {
@import "@/assets/pc-1366.scss";
@import "./pc.scss";
}
@media screen and (max-width: 768px) {
@import "@/assets/pc-768.scss";
@import "./pc.scss";
}
</style>

15
pages-child/header/pc.scss

@ -1,4 +1,3 @@
.header {
position: absolute;
left: 0;
@ -27,7 +26,7 @@
position: relative;
display: inline-block;
margin: 0 bq(18);
height: bq(43);
height: bq(50);
&::after {
content: "";
@ -35,26 +34,28 @@
}
}
.desc {
.header__desc {
font-size: bq(12);
line-height: bq(18);
height: 80%;
line-height: bq(20);
// height: 80%;
display: inline-block;
color: #fff;
white-space: nowrap;
}
.navbar {
color: #fff;
padding-top: 0;
margin-left: auto;
.navbar__item {
float: left;
cursor: grab;
margin: 0 bq(15);
margin: 0 bq(16);
text-align: center;
font-size: bq(16);
line-height: bq(43);
// width: 4em;
}
}
}
}

211
pages/index.vue

@ -4,106 +4,165 @@
<div class="banner">
<div class="banner__wrap">
<div class="banner__title">
聚焦区块链生态专注于DAPP开发
聚焦区块链生态专注于DAPP开发
打造区块链+互联网新时代
</div>
<div class="banner__button">
关于我们
</div>
</div>
</div>
</div>
<vdesc></vdesc>
<vpanel vtitle="四大系统" vdesc="完美的技术支持">
<div><span class="f18d_b">区块链+</span>|短视频系统</div>
<vpanel vtitle="四大系统" vdesc="完美的技术支持" color='#f5f5f5'>
<ul class="dd clearfix">
<li class="d1 border">区块链+</li>
<li class="d1 border">短视频系统</li>
<li class="d1 border">电商系统</li>
<li class="d1">棋牌游戏系统</li>
</ul>
<div class="swiper swiperBox" v-swiper:swiper="swiperOption" ref="swiperBox" @mouseenter="stopSwiper" @mouseleave="startSwiper">
<div class="swiper-wrapper">
<div class="swiper-slide" v-for="(banner,i) in banners" :key="i">
<img :src="banner">
</div>
<div class="swiper-wrapper">
<div class="swiper-slide" v-for="(banner,i) in banners" :key="i">
<img :src="banner">
</div>
<div class="swiper-pagination" slot="pagination"></div>
<div class="swiper-button-prev" slot="button-prev"></div>
<div class="swiper-button-next" slot="button-next"></div>
</div>
<div class="swiper-button-prev" slot="button-prev"></div>
<div class="swiper-button-next" slot="button-next"></div>
</div>
</vpanel>
<vpanel vtitle="合作方式" vdesc="互联网产业新趋势" color='#f5f5f5'>
<div class="hz_wrapper">
<div class="line"></div>
<ul class="fl__wraper clearfix">
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">1.商业模式设计</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">2.品牌策划</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">3.产品规划</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">4.UI设计</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">5.产品开发</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">6.项目跟进</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">7.产品测试</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">8.交付上线</p>
</li>
<li class="fl__item">
<div class="fl__item__icon"></div>
<div class="fl__item__circle"></div>
<p class="fl__item__name">9.迭代优化</p>
</li>
</ul>
</div>
</vpanel>
<vpanel vtitle="选择华谦" vdesc=" 品牌保证 ">
</vpanel>
</div>
</template>
<script>
import vpanel from "@/components/panel/index.vue";
import vheader from "@/pages-child/header/index.vue";
import vdesc from "@/pages-child/desc/index.vue";
export default {
components: {
vheader,
vdesc,
vpanel
},
data(){
return {
banners: [ '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg', '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg', '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg','//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg'],
// Swiper
swiperOption: {
loop: true,
speed:500,
// notNextTicknotNextTicktrueNextTickswiperswiper使swipertrue
notNextTick: true,
slidesPerView: 'auto',
centeredSlides: true,
pagination: {
el: '.swiper-pagination',
clickable: true
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
on: {
slideChange() {
// console.log('onSlideChangeEnd', this);
},
tap() {
// console.log('onTap', this);
}
},
autoplay: {
delay: 3500,
disableOnInteraction: false,
},
autoplayDisableOnInteraction:false,
// effect:'cube',
mousewheel: true,
preloadImages: false,
lazy: true
import vpanel from "@/components/panel/index.vue";
import vheader from "@/pages-child/header/index.vue";
import vdesc from "@/pages-child/desc/index.vue";
export default {
components: {
vheader,
vdesc,
vpanel
},
data() {
return {
banners: ['//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg', '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg', '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg', '//cdn.cnbj0.fds.api.mi-img.com/b2c-bbs-cms/2018/0929/20180929071037605.jpg'],
// Swiper
swiperOption: {
loop: true,
speed: 500,
// notNextTicknotNextTicktrueNextTickswiperswiper使swipertrue
notNextTick: true,
slidesPerView: 'auto',
centeredSlides: true,
pagination: {
el: '.swiper-pagination',
clickable: true
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
on: {
slideChange() {
// console.log('onSlideChangeEnd', this);
},
tap() {
// console.log('onTap', this);
}
},
autoplay: {
delay: 3500,
disableOnInteraction: false,
},
autoplayDisableOnInteraction: false,
// effect:'cube',
mousewheel: true,
preloadImages: false,
lazy: true
}
}
},
swiper() {
// swiperswipernotNextTicktrue
return this.$refs.swiperBox.swiper
// swiperswipernotNextTicktrue
return this.$refs.swiperBox.swiper
},
methods:{
stopSwiper(){
this.swiper.autoplay.stop()
},
startSwiper(){
this.swiper.autoplay.start()
}
methods: {
stopSwiper() {
this.swiper.autoplay.stop()
},
startSwiper() {
this.swiper.autoplay.start()
}
}
}
}
</script>
<style lang='scss'>
@media screen and (min-width:1440px){
@import '@/assets/pc-1920.scss';
@import './pc.scss';
}
@media screen and (min-width:768px) and (max-width:1440px) {
@import '@/assets/pc-1366.scss';
@import './pc.scss';
@media screen and (min-width: 1440px) {
@import "@/assets/pc-1920.scss";
@import "./pc.scss";
}
@media screen and (min-width: 768px) and (max-width: 1440px) {
@import "@/assets/pc-1366.scss";
@import "./pc.scss";
}
@media screen and (max-width:768px) {
@import '@/assets/pc-768.scss';
@import './pc.scss';
@media screen and (max-width: 768px) {
@import "@/assets/pc-768.scss";
@import "./pc.scss";
}
</style>

160
pages/pc.scss

@ -11,41 +11,141 @@
background-size: 100% 100%;
background-repeat: no-repeat;
overflow: hidden;
.banner__wrap{
.banner__wrap {
width: bq(800);
margin: 0 auto;
.banner__title{
.banner__title {
box-sizing: content-box;
margin-top: bq(248);
width: bq(678);
text-align: left;
color: #fff;
// padding-right: bq(550);
font-size: bq(44);
font-weight: lighter;
line-height: bq(59.66);
letter-spacing: 0;
color: #ffffff;
}
.banner__button {
display: flex;
cursor: pointer;
align-items: center;
justify-content: center;
margin-top: 40px;
width: bq(133);
height: bq(41);
line-height: bq(41);
font-size: bq(16);
text-align: center;
border-radius: bq(41);
color: #fff;
border: 1px solid #fff;
}
}
}
.dd {
margin: bq(38) 0 bq(38) 0;
display: inline-block;
.d1 {
float: left;
padding: 0 bq(20);
font-size: bq(18);
font-weight: 400;
color: rgba(75, 75, 75, 1);
&.border {
border-right: 1px solid rgba(143, 143, 143, 1);
}
}
}
.hz_wrapper {
// height: bq(100);
margin-top: bq(40);
position: relative;
.line {
position: absolute;
top: bq(77+30+14/2);
left: 0;
right: 0;
background-image: url('/image/xu.png');
height: 1px;
}
.fl__wraper {
.fl__item {
float: left;
position: relative;
top: 0;
min-width: bq(137);
margin-right: bq(10);
transition: .2s linear all;
&:hover {
top: bq(-17);
}
.fl__item__icon {
box-sizing: content-box;
margin-top: bq(248);
width: bq(678);
text-align: left;
color: #fff;
// padding-right: bq(550);
font-size: bq(44);
font-weight: lighter;
line-height: bq(59.66);
letter-spacing: 0;
color: #ffffff;
width: bq(77);
height: bq(77);
background-image: url('/image/icon0.png');
background-repeat: no-repeat;
background-position: center;
margin: 0 auto;
background-size: 100% 100%;
}
.fl__item__circle {
margin: 0 auto;
margin-top: bq(30);
width: bq(15);
height: bq(15);
border: 2px solid #888888;
border-radius: 50%;
}
.fl__item__name {
font-size: bq(20);
margin-top: bq(20);
}
.banner__button{
display: flex;
cursor: pointer;
align-items: center;
justify-content: center;
margin-top: 40px;
width: bq(133);
height: bq(41);
line-height: bq(41);
font-size: bq(16);
text-align: center;
border-radius: bq(41);
color: #fff;
border: 1px solid #fff;
}
}
}
}
.swiperBox{
height: bq(342);
.swiperBox {
height: bq(458);
/deep/ .swiper-button-prev {
background-image: url(/image/left.png);
background-size: 100% 100%;
left: 0;
width: bq(59);
height: bq(105);
transform: translateY(-25%);
}
/deep/ .swiper-button-next {
background-image: url(/image/right.png);
background-size: 100% 100%;
right: 0;
width: bq(59);
height: bq(105);
transform: translateY(-25%);
}
img {
width: 100%;
max-width: 100%;
height: 100%;
}
}

BIN
static/image/left.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
static/image/right.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

0
static/image/形状 22.png → static/image/xu.png

Before

Width:  |  Height:  |  Size: 258 B

After

Width:  |  Height:  |  Size: 258 B

77
static/js/flexible.js

@ -0,0 +1,77 @@
(function (designWidth, maxWidth) {
var doc = document,
win = window;
var docEl = doc.documentElement;
var metaEl,
metaElCon;
var styleText,
remStyle = document.createElement("style");
var tid;
function refreshRem() {
// var width = parseInt(window.screen.width); // uc有bug
var width = docEl.getBoundingClientRect().width;
if (!maxWidth) {
maxWidth = 540;
};
if (width > maxWidth) { // 淘宝做法:限制在540的屏幕下,这样100%就跟10rem不一样了
width = maxWidth;
}
var rem = width * 100 / designWidth;
// var rem = width / 10; // 如果要兼容vw的话分成10份 淘宝做法
//docEl.style.fontSize = rem + "px"; //旧的做法,在uc浏览器下面会有切换横竖屏时定义了font-size的标签不起作用的bug
remStyle.innerHTML = 'html{font-size:' + rem + 'px;}';
}
// 设置 viewport ,有的话修改 没有的话设置
metaEl = doc.querySelector('meta[name="viewport"]');
// 20171219修改:增加 viewport-fit=cover ,用于适配iphoneX
metaElCon = "width=device-width,initial-scale=1,maximum-scale=1.0,user-scalable=no,viewport-fit=cover";
if (metaEl) {
metaEl.setAttribute("content", metaElCon);
} else {
metaEl = doc.createElement("meta");
metaEl.setAttribute("name", "viewport");
metaEl.setAttribute("content", metaElCon);
if (docEl.firstElementChild) {
docEl.firstElementChild.appendChild(metaEl);
} else {
var wrap = doc.createElement("div");
wrap.appendChild(metaEl);
doc.write(wrap.innerHTML);
wrap = null;
}
}
//要等 wiewport 设置好后才能执行 refreshRem,不然 refreshRem 会执行2次;
refreshRem();
if (docEl.firstElementChild) {
docEl.firstElementChild.appendChild(remStyle);
} else {
var wrap = doc.createElement("div");
wrap.appendChild(remStyle);
doc.write(wrap.innerHTML);
wrap = null;
}
win.addEventListener("resize", function () {
clearTimeout(tid); //防止执行两次
tid = setTimeout(refreshRem, 300);
}, false);
win.addEventListener("pageshow", function (e) {
if (e.persisted) { // 浏览器后退的时候重新计算
clearTimeout(tid);
tid = setTimeout(refreshRem, 300);
}
}, false);
if (doc.readyState === "complete") {
doc.body.style.fontSize = "16px";
} else {
doc.addEventListener("DOMContentLoaded", function (e) {
doc.body.style.fontSize = "16px";
}, false);
}
})(750, 750);
Loading…
Cancel
Save