zhibin 6 年之前
父節點
當前提交
ebf2fbefc6
共有 46 個文件被更改,包括 252 次插入64 次删除
  1. 1 1
      dist/index.html
  2. 0 2
      dist/static/js/1.e0fb0a765bd3babfc64b.js
  3. 0 1
      dist/static/js/1.e0fb0a765bd3babfc64b.js.map
  4. 0 2
      dist/static/js/2.1cc5a558025e98c6377c.js
  5. 0 1
      dist/static/js/2.1cc5a558025e98c6377c.js.map
  6. 0 2
      dist/static/js/3.d69fce1d4f79ba687336.js
  7. 0 1
      dist/static/js/3.d69fce1d4f79ba687336.js.map
  8. 0 2
      dist/static/js/4.40469a3ad37aade3f4f8.js
  9. 0 1
      dist/static/js/4.40469a3ad37aade3f4f8.js.map
  10. 0 2
      dist/static/js/6.bcf8808b56a65095f5fd.js
  11. 0 1
      dist/static/js/6.bcf8808b56a65095f5fd.js.map
  12. 0 2
      dist/static/js/7.827c52f2e859bb5da715.js
  13. 0 1
      dist/static/js/7.827c52f2e859bb5da715.js.map
  14. 二進制
      src/assets/images/xc_1_1.jpg
  15. 二進制
      src/assets/images/xc_1_2.jpg
  16. 二進制
      src/assets/images/xc_1_3.jpg
  17. 二進制
      src/assets/images/xc_2_.jpg
  18. 二進制
      src/assets/images/xc_2_0.jpg
  19. 二進制
      src/assets/images/xc_2_1.jpg
  20. 二進制
      src/assets/images/xc_2_10.jpg
  21. 二進制
      src/assets/images/xc_2_11.jpg
  22. 二進制
      src/assets/images/xc_2_2.jpg
  23. 二進制
      src/assets/images/xc_2_3.jpg
  24. 二進制
      src/assets/images/xc_2_4.jpg
  25. 二進制
      src/assets/images/xc_2_5.jpg
  26. 二進制
      src/assets/images/xc_2_6.jpg
  27. 二進制
      src/assets/images/xc_2_7.jpg
  28. 二進制
      src/assets/images/xc_2_8.jpg
  29. 二進制
      src/assets/images/xc_2_9.jpg
  30. 二進制
      src/assets/images/xc_3_1.jpg
  31. 二進制
      src/assets/images/xc_3_2.png
  32. 二進制
      src/assets/images/xc_3_3.jpg
  33. 二進制
      src/assets/images/xc_3_4.jpg
  34. 二進制
      src/assets/images/xc_3_5.jpg
  35. 二進制
      src/assets/images/xc_3_6.jpg
  36. 二進制
      src/assets/images/xc_3_7.jpg
  37. 108 0
      src/components/imageQuery/index.vue
  38. 15 5
      src/components/menu/index.vue
  39. 2 2
      src/main.js
  40. 53 16
      src/pages/about/index.vue
  41. 15 7
      src/pages/about/style.css
  42. 13 2
      src/pages/home/index.vue
  43. 2 2
      src/pages/home/style.css
  44. 10 1
      src/pages/information/news/details.vue
  45. 24 7
      src/pages/information/news/index.vue
  46. 9 3
      src/pages/layout/header.vue

+ 1 - 1
dist/index.html

@@ -4,4 +4,4 @@
         hm.src = "https://hm.baidu.com/hm.js?ffaff915bbe343d0f8a2e1f3e7690551";
         var s = document.getElementsByTagName("script")[0];
         s.parentNode.insertBefore(hm, s);
-      })();</script><title>四维时代</title><link href=./static/css/app.b27f1364601e111d38b153e10d09330b.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.918ac18dd4b660d80172.js></script><script type=text/javascript src=./static/js/vendor.2b1ab4a90cc9aae36b2c.js></script><script type=text/javascript src=./static/js/app.4d3dbc6c0b5dc561ff1a.js></script></body></html>
+      })();</script><title>四维时代</title><link href=./static/css/app.2873336aecb1d3f7fef8bfb989d85b1f.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.c5c3741c3169d8d7136a.js></script><script type=text/javascript src=./static/js/vendor.2b1ab4a90cc9aae36b2c.js></script><script type=text/javascript src=./static/js/app.a1dae5292c67a5a43349.js></script></body></html>

文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/1.e0fb0a765bd3babfc64b.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/1.e0fb0a765bd3babfc64b.js.map


文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/2.1cc5a558025e98c6377c.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/2.1cc5a558025e98c6377c.js.map


文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/3.d69fce1d4f79ba687336.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/3.d69fce1d4f79ba687336.js.map


文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/4.40469a3ad37aade3f4f8.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/4.40469a3ad37aade3f4f8.js.map


文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/6.bcf8808b56a65095f5fd.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/6.bcf8808b56a65095f5fd.js.map


文件差異過大導致無法顯示
+ 0 - 2
dist/static/js/7.827c52f2e859bb5da715.js


文件差異過大導致無法顯示
+ 0 - 1
dist/static/js/7.827c52f2e859bb5da715.js.map


二進制
src/assets/images/xc_1_1.jpg


二進制
src/assets/images/xc_1_2.jpg


二進制
src/assets/images/xc_1_3.jpg


二進制
src/assets/images/xc_2_.jpg


二進制
src/assets/images/xc_2_0.jpg


二進制
src/assets/images/xc_2_1.jpg


二進制
src/assets/images/xc_2_10.jpg


二進制
src/assets/images/xc_2_11.jpg


二進制
src/assets/images/xc_2_2.jpg


二進制
src/assets/images/xc_2_3.jpg


二進制
src/assets/images/xc_2_4.jpg


二進制
src/assets/images/xc_2_5.jpg


二進制
src/assets/images/xc_2_6.jpg


二進制
src/assets/images/xc_2_7.jpg


二進制
src/assets/images/xc_2_8.jpg


二進制
src/assets/images/xc_2_9.jpg


二進制
src/assets/images/xc_3_1.jpg


二進制
src/assets/images/xc_3_2.png


二進制
src/assets/images/xc_3_3.jpg


二進制
src/assets/images/xc_3_4.jpg


二進制
src/assets/images/xc_3_5.jpg


二進制
src/assets/images/xc_3_6.jpg


二進制
src/assets/images/xc_3_7.jpg


+ 108 - 0
src/components/imageQuery/index.vue

@@ -0,0 +1,108 @@
+<template>
+  <div class="image-dialog" v-if="screensa" @click="exitHandle">
+    <!-- <a @click="exitHandle"><i class="iconfont icon-left"></i>返回</a> -->
+    <div class="image-layout" @click.stop>
+      <i class="iconfont up" @click="current = current == 0 ? screensa.length - 1: --current" slot="up"></i>
+      <Slide :screens="screensa" :current="current">
+        <img slot="item" slot-scope="{data}" :src="data" class="image-item"  @click.stop>
+      </Slide>
+      <i class="iconfont next" @click="current = current == screensa.length - 1 ? 0: ++current" slot="next"></i>
+    </div>
+  </div>
+</template>
+
+<script>
+import Slide from '@/components/Slide'
+export default {
+  components: { Slide },
+  props: ['screens'],
+  data () {
+    return {
+      current: 0,
+      screensa: this.screens
+    }
+  },
+  watch: {
+    screens () {
+      this.screensa = this.screens
+    }
+  },
+  methods: {
+    exitHandle () {
+      this.screensa = null
+      this.$emit('exitHandle')
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+.image-dialog {
+  position: fixed;
+  z-index: 9999999999999999999;
+  left: 0;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  background-color: rgba(0,0,0,0.8);
+}
+
+.image-dialog a {
+  position: absolute;
+  color: #fff;
+  background-color: #fa3800;
+  left: 10px;
+  top: 10px;
+  padding: 8px 15px;
+  cursor: pointer;
+  border-radius: 3px;
+}
+
+.image-layout {
+  width: 60%;
+  padding-left: 20px;
+  padding-right: 20px;
+  position: absolute;
+  top: 50%;
+  left: 50%;
+  transform: translateY(-50%) translateX(-50%);
+}
+
+.image-item {
+  width: 100%;
+  border: 10px solid #fff;
+  border-radius: 3px;
+}
+
+.iconfont {
+  color: #fff;
+  background-color: rgb(0,180,240);
+  padding: 8px 15px;
+  cursor: pointer;
+  border-radius: 3px;
+  position: absolute;
+}
+
+.iconfont.up {
+  left: -80px;
+  top: 50%;
+}
+
+.iconfont.up::after {
+  content: '^';
+  display: inline-block;
+  transform: rotateZ(-90deg)
+}
+
+.iconfont.next {
+  right: -80px;
+  top: 50%;
+}
+
+.iconfont.next::after {
+  content: '^';
+  display: inline-block;
+  transform: rotateZ(90deg)
+}
+</style>

+ 15 - 5
src/components/menu/index.vue

@@ -61,7 +61,7 @@ export default {
       this.$emit('hide')
     },
     sizeHandle () {
-      if (window.innerWidth < 1400) {
+      if (window.innerWidth < 1230) {
         this.isMobile = true
       } else {
         this.isMobile = false
@@ -113,7 +113,7 @@ export default {
     transform: rotateZ(-90deg);
     position: absolute;
     top: 30px;
-    right: 25px;
+    right: 20px;
     margin-top: -12px;
     transition: transform linear .3s;
     font-size: 25px;
@@ -129,7 +129,7 @@ export default {
     padding-left: 20px;
   }
 
-  @media screen and (min-width: 1400px) {
+  @media screen and (min-width: 1200px) {
     .child {
       padding-left: 0;
       overflow: hidden;
@@ -145,8 +145,8 @@ export default {
     .child > .a {
       background-color: #1a1a1a;
       text-align: left;
-      padding-left: 40px;
-      padding-right: 40px;
+      padding-left: 30px;
+      padding-right: 30px;
       white-space: nowrap;
     }
 
@@ -154,4 +154,14 @@ export default {
       padding: 0
     }
   }
+
+  @media screen and (min-width: 1400px) {
+    .child > .a {
+      padding-left: 40px;
+      padding-right: 40px;
+    }
+    .menu-componet span {
+      right: 25px;
+    }
+  }
 </style>

+ 2 - 2
src/main.js

@@ -9,8 +9,8 @@ import router from './router'
 Vue.config.productionTip = false
 Vue.prototype.$bus = new Vue()
 
-axios.defaults.baseURL = '/newOfficialapi/'
-// axios.defaults.baseURL = 'http://www.4dage.com/newOfficialapi/'
+// axios.defaults.baseURL = '/newOfficialapi/'
+axios.defaults.baseURL = 'http://www.4dage.com/newOfficialapi/'
 
 let language = ({ 'en': 2, 'cn': 1 })['cn']
 axios.interceptors.request.use(function (config) {

+ 53 - 16
src/pages/about/index.vue

@@ -1,5 +1,7 @@
 <template>
   <div>
+    <imageQuery :screens="screens" @exitHandle="screens = null" v-if="screens" />
+
     <ScrollEvent>
       <div class="banner"></div>
       <div class="brief" id="qyjj">
@@ -24,9 +26,14 @@
           <p><span>2017年07月</span>大型3D模型资源共享与交流平台四维模库(4DModel)在中国上线。</p>
           <p><span>2017年09月</span>第二届中德人工智能大会成功举办。</p>
           <p><span>2018年02月</span>首次联手中央电视台和广东春晚节目组,通过人工智能三维数字技术在中央1套和中央3套为全国观众呈现“中国奇迹”。</p>
-          <p><span>2018年05月</span>推出全球⾸款消费级3D相机四维看看,5分钟即可复刻100平⽶空间,耗时仅为传统机器采集图像时间的⼆⼗分之⼀,价格仅为传统3D建模设备的⼗分之⼀。</p>
+          <p><span>2018年05月</span>推出全球⾸款消费级3D相机四维看看,10分钟即可复刻100平⽶空间,耗时仅为传统机器采集图像时间的⼆⼗分之⼀,价格仅为传统3D建模设备的⼗分之⼀。</p>
           <p><span>2018年08⽉</span>推出在线看展平台四维看展,是国内第⼀个利⽤⼈⼯智能三维数字化技术打造的线上艺术空间,是集在线看展、展览资讯、展馆详情以及热⻔评论于⼀体的平台。</p>
           <p><span>2018年11月</span>第三届中德⼈⼯智能⼤会成功举办。四维时代向世界展示了业界领先的三维数字化技术和⼈⼯智能开发平台,并发布⼿机端三维重建技术以及新版四维看看。</p>
+          <p><span>2018年12月</span>获批设立广东省博士工作站。</p>
+          <p><span>2019年01月</span>与黑提恩斯-德国陶瓷博物馆建立数字化合作,并获莱茵邮报专题报道。</p>
+          <p><span>2019年04月</span>与黑提恩斯-德国陶瓷博物馆的合作项目入选“一带一路”国际合作高峰论坛案例集,同期入选案例集的还包括华为、蚂蚁金服、腾讯和科大讯飞。</p>
+          <p><span>2019年05月</span>与携程旅游网正式达成战略合作,助力携程打造3D线上实景漫游功能。</p>
+          <p><span>2019年05月</span>在德国柏林发布了最新一代3D空间相机“四维看看Pro”。</p>
         </div>
       </div>
 
@@ -37,14 +44,14 @@
       <div class="join-info">
 
         <div class="join-item">
-          <img src="@/assets/images/bg1.png" class="join-bg-1 join-bg-item-1">
-          <div class="join-content">
+          <img src="http://video.cgaii.com/new4dage/images/images/bg1.png" class="join-bg-1 join-bg-item-1">
+          <div class="join-content" @click='screens = xc1'>
             <div class="join-img">
               <div class="img">
-                <img src="@/assets/images/item-1.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-1.jpg" alt="">
               </div>
               <div class="img">
-                <img src="@/assets/images/item-2.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-2.jpg" alt="">
               </div>
             </div>
             <div class="join-list">
@@ -56,18 +63,18 @@
               </ul>
             </div>
           </div>
-          <img src="@/assets/images/bg2.png" class="join-bg-2 join-bg-item-2">
+          <img src="http://video.cgaii.com/new4dage/images/images/bg2.png" class="join-bg-2 join-bg-item-2">
         </div>
 
         <div class="join-item">
-          <img src="@/assets/images/bg3.png" class="join-bg-1 join-bg-item-3">
-          <div class="join-content">
+          <img src="http://video.cgaii.com/new4dage/images/images/bg3.png" class="join-bg-1 join-bg-item-3">
+          <div class="join-content" @click='screens = xc2'>
             <div class="join-img">
               <div class="img">
-                <img src="@/assets/images/item-3.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-3.jpg" alt="">
               </div>
               <div class="img">
-                <img src="@/assets/images/item-4.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-4.jpg" alt="">
               </div>
             </div>
             <div class="join-list">
@@ -79,17 +86,17 @@
               </ul>
             </div>
           </div>
-          <img src="@/assets/images/bg4.png" class="join-bg-2 join-bg-item-4">
+          <img src="http://video.cgaii.com/new4dage/images/images/bg4.png" class="join-bg-2 join-bg-item-4">
         </div>
 
         <div class="join-item">
-          <div class="join-content">
+          <div class="join-content" @click='screens = xc3'>
             <div class="join-img">
               <div class="img">
-                <img src="@/assets/images/item-5.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-5.jpg" alt="">
               </div>
               <div class="img">
-                <img src="@/assets/images/item-6.jpg" alt="">
+                <img src="http://video.cgaii.com/new4dage/images/images/item-6.jpg" alt="">
               </div>
             </div>
             <div class="join-list">
@@ -117,17 +124,47 @@
 import Recruit from '@/components/recruit'
 import ScrollEvent from '@/components/Scroll'
 import ImageShear from '@/components/ImageShear'
+import ImageQuery from '@/components/imageQuery'
 
 export default {
   name: 'about',
   data () {
     return {
       contentbg: 'http://video.cgaii.com/new4dage/images/images/bg.jpg',
-      height: 400
+      height: 400,
+      screens: null,
+      xc1: [
+        'http://video.cgaii.com/new4dage/images/images/xc_1_1.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_1_2.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_1_3.jpg'
+      ],
+      xc2: [
+        'http://video.cgaii.com/new4dage/images/images/xc_2_0.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_1.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_2.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_3.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_4.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_5.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_6.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_7.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_8.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_9.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_10.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_2_11.jpg'
+      ],
+      xc3: [
+        'http://video.cgaii.com/new4dage/images/images/xc_3_1.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_2.png',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_3.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_4.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_5.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_6.jpg',
+        'http://video.cgaii.com/new4dage/images/images/xc_3_7.jpg'
+      ]
     }
   },
   components: {
-    ImageShear, ScrollEvent, Recruit
+    ImageShear, ScrollEvent, Recruit, ImageQuery
   },
   mounted () {
     this.onResize = () => {

+ 15 - 7
src/pages/about/style.css

@@ -80,17 +80,25 @@
   overflow: hidden;
   position: relative;
   z-index: 1;
+  transition: transform .3s linear;
+  transform-origin: right top;
+  cursor: pointer;
+  box-shadow: 0 0 5px rgba(0,0,0,0.5)
+}
+
+
+.join-img .img:hover {
+  transform: rotateZ(-5deg)
 }
 
 .join-img .img img {
   width: 100%;
-  transition: transform .3s linear;
   display: block;
 }
 
-.join-img .img img:hover {
+/* .join-img .img img:hover {
   transform: scale(1.1);
-}
+} */
 
 .join-img .img:nth-child(2) {
   position: absolute;
@@ -99,15 +107,15 @@
   top: 50%;
   transform-origin: 80% 20%;
   transform: translateX(-50%) translateY(-50%) scale(1.07) rotateZ(15deg);
-  
 }
 
 
-.join-item:nth-child(2n) .join-img img:nth-child(2) {
+.join-item:nth-child(2n) .join-img .img:nth-child(2) {
   transform-origin: 20% 20%;
-  transform: translateX(-50%) translateY(-50%) scale(1.07) rotateZ(-10deg);
+  transform: translateX(-45%) translateY(-50%) scale(1) rotateZ(-15deg);
 }
 
+
 .join-info {
   overflow: hidden;
 }
@@ -149,7 +157,7 @@
 
 
 .join-list h4 {
-  text-align: center;
+  text-align: left;
 }
 .join-bg-item-1 {
   width: 40.32%;

+ 13 - 2
src/pages/home/index.vue

@@ -290,13 +290,24 @@ export default {
       courses: {
         data: [
           {
+            time: '2019',
+            title: '初心如磐',
+            content: [
+              '与黑提恩斯-德国陶瓷博物馆建立数字化合作,推出了德国陶瓷博物馆全球首个线上特展,并获莱茵邮报专题报道。',
+              '与黑提恩斯-德国陶瓷博物馆的合作项目入选“一带一路”国际合作高峰论坛案例集,同期入选的案例集包括华为、蚂蚁金服、腾讯和科大讯飞。',
+              '与携程旅游网正式达成战略合作,助力携程打造3D线上实景漫游功能。',
+              '在德国柏林发布了最新一代3D空间相机“四维看看Pro”。'
+            ]
+          },
+          {
             time: '2018',
             title: '初心如磐',
             content: [
               '联手中央电视台和广东春晚节目组,通过人工智能三维数字技术在中央1套和中央3套为全国观众呈现“中国奇迹”。',
               '推出“四维看展”,国内首个利用人工智能三维重建技术打造的线上艺术空间。',
-              '推出全球首款消费级3D相机四维看看,5分钟即可复刻100平米空间。',
-              '成功举办第三届中德人工智能大会。'
+              '推出全球首款消费级3D相机四维看看,10分钟即可复刻100平米空间。',
+              '成功举办第三届中德人工智能大会。',
+              '获批设立广东省博士工作站。'
             ]
           },
           {

+ 2 - 2
src/pages/home/style.css

@@ -523,7 +523,7 @@
 .time-zhou span {
   font-size: 16px;
   color: #fff;
-  width: 20%;
+  width: 16%;
   float: left;
   text-align: center;
   line-height: 40px;
@@ -690,7 +690,7 @@
 
 
   .course-item {
-    width: 18%;
+    width: 14%;
     margin-right: 2.5% !important;
     margin-bottom: 60px;
   }

+ 10 - 1
src/pages/information/news/details.vue

@@ -2,7 +2,7 @@
   <div class="layout" v-if="article" :class="{mobile: isMobile}" >
     <h2>{{article.title}}</h2>
     <span v-if="article.date">{{new Date(Number(article.date)).format('yyyy-MM-dd')}} 发表</span>
-    <span>{{article.label}}</span>
+    <span v-if="article.origin">来源: {{article.origin}}</span>
     <div v-html="article.content" class="new-content"></div>
   </div>
 </template>
@@ -64,4 +64,13 @@ export default {
 .new-content {
   text-align: left;
 }
+
+</style>
+
+<style>
+
+.new-content img,
+.new-content video {
+  max-width: 100% !important;
+}
 </style>

+ 24 - 7
src/pages/information/news/index.vue

@@ -8,7 +8,7 @@
           <template v-if="article.origin">来源:{{article.origin}} &nbsp;|&nbsp;</template>
           {{new Date(Number(article.date)).format('yyyy-MM-dd')}} 发表
         </span>
-        <p>{{article.brief}}</p>
+        <p ref="brief">{{article.brief}}</p>
         <a :href="'#/information/news/' + article.id">阅读全文>></a>
       </div>
     </div>
@@ -87,21 +87,38 @@ export default {
   color: #00b4ed;
 }
 
-@media screen and (min-width: 950px) {
+@media screen and (min-width: 700px) {
   .article {
-    padding-left: 330px;
+    padding-right: calc(100% - 330px);
     position: relative;
-    min-height: 240px;
     padding-bottom: 40px;
     margin-bottom: 40px;
   }
 
   .article img {
+    width: 300px;
+  }
+
+  .article div {
     position: absolute;
+    left: 330px;
+    right: 0;
     top: 0;
-    left: 0;
-    width: 300px;
-    max-height: calc(100% - 40px)
+    bottom: 40px;
+    display: flex;
+    flex-direction: column;
+  }
+
+  .article h2,
+  .article a,
+  .article span {
+    flex: 0 0 auto;
+  }
+
+  .article p {
+    height: 88px;
+    flex: 0 0 auto;
+    overflow: hidden;
   }
 
   .article h2 {

+ 9 - 3
src/pages/layout/header.vue

@@ -172,7 +172,7 @@ export default {
       this.showMenu = !this.showMenu
     },
     sizeHandle () {
-      if (window.innerWidth < 1400) {
+      if (window.innerWidth < 1230) {
         this.mxHeight = window.innerHeight - 65
       } else {
         this.mxHeight = 0
@@ -338,7 +338,7 @@ export default {
   padding: 0 !important
 }
 
-@media screen and (min-width: 1400px) {
+@media screen and (min-width: 1200px) {
   .nav {
     text-align: right;
   }
@@ -359,7 +359,7 @@ export default {
 
   .menu .menu-item {
     height: 100%;
-    padding: 24px 40px;
+    padding: 24px 30px;
     display: inline-block;
   }
 
@@ -378,6 +378,12 @@ export default {
   }
 }
 
+@media screen and (min-width: 1400px) {
+  .menu .menu-item {
+    padding: 24px 40px;
+  }
+}
+
 @media screen and (min-width: 1600px) {
   .nav {
     padding: 0 150px;