YAOPAI 团队博客

weui Flex 布局小结

2016-04-12  本文已影响5847人  Yi罐可乐
微信weui panel布局

上图是微信 weui 里其中一个布局,使用了 flex。 左边的图片是固定宽度,右边的标题和内容是自适应宽度,当文字过多的时候会显示省略符号:

调整浏览器宽度后

不废话上代码:

  <article>
    <div class="media_hd">
      <img />
    </div>
    <div class="media_bd">
      <h4 class="media_title">XXXXXXX标题一</h4>
      <p class="media_desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</p>
    </div>
  </article>
article {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
    -webkit-box-align: center;
       -ms-flex-align: center;
          align-items: center;
}

.media_hd {
  margin-right: .8em;
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;

  img {
    width: 100%;
    max-height: 100%;
    vertical-align: middle;
  }
}

.media_bd {
  -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
  min-width: 0;

  h4 {
    font-weight: 400;
    font-size: 17px;
    width: auto;
    overflow: hidden;
    text-overflow: ellipsis;//文字超过盒子宽度显示省略符号
    white-space: nowrap;//文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止
    /*不明白微信为毛写那么多和换行相关的属性*/
    word-wrap: normal;
    word-wrap: break-word;//允许长单词换行到下一行
    word-break: break-all;//使用浏览器默认的换行规则
  }

  p {
    color: #999999;
    font-size: 13px;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}

再贴一个小 Demo ,来演示多行文字溢出自动显示省略号:

<style>
+  .box {
+    width: 400px; 
+    display: -webkit-box;
+    -webkit-line-clamp: 3;
+    -webkit-box-orient: vertical;
+    overflow: hidden;
+}
+</style>
+
+<div class="box">
+    【大众点评与美团网合并 王兴张涛担任联席CEO】
+     大众点评网与美团网今天联合发布声明,宣布达成战略合作,
+     双方已共同成立一家新公司。新公司将实施Co-CEO制度,
+     美团CEO王兴和大众点评CEO张涛将同时担任联席CEO和联席董事长,
+     重大决策将在联席CEO和董事会层面完成。
+</div> 
显示效果

以上代码目前仅支持webkit浏览器,so,移动端完美兼容,PC端就不造了。

上一篇下一篇

猜你喜欢

热点阅读