flex 布局测试

12.png
页面的布局
<div class="demo_wrapper">
    <div class="demo_item">
        <div class="item_img">
            ![](http://www.dgtle.com/uc_server/avatar.php?uid=345279&size=middle)
        </div>
        <div class="item_body">
            <h1>这是一个很长的标题,这是一个很长的标题,这是一个很长的标题</h1>
            <ul class="column">
                <li>
                    <span>详情1</span><span>详情2</span>
                </li>
                <li>
                    <span>内容1</span><span>内容2</span>
                </li>
            </ul>
        </div>
    </div>
</div>
页面的基本样式
*, ul, li, h1 {
  margin: 0;
  padding: 0;
}
h1 {
  font-weight: normal;
  font-size: 16px;
}
ul, li {
  list-style: none;
}
页面的flex布局样式
  • 设置div -- class 为demo_item (下面的class选择器用div.demo_item表示)为display: flex;
.demo_item {
  width: 100%;
  -webkit-display: flex;
  display: flex;
}
13.png
  • 设置div.demo_item的子级div.item_img 为flex: 0 0 120px;
.item_img {
  flex: 0 0 120px;
  width: 120px;
}

这里flex属性的介绍

  • 图片的样式(不重要)
.item_img--src {
  width: 100px;
  height: 80px;
  margin-left: 10px;
  border-radius: 4px;
}
  • 标题的长度超过的省略

    先设置div.item_body 的样式为flex: 1; overflow: hidden;

    可以先试着不用overflow属性,看看样式


.item_body {
  flex: 1;
  overflow: hidden;
}

 .item_body h1 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
  • 字体的超过你的容器用省略符号的样式为
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
14.png
  • 接下来是div.column 的display: flex布局的使用
.column {
  display: flex;
  padding: 10px 0;
}

.column li {
  flex: 1;
  text-align: center;
}

.column li span {
  display: block;
}
页面的flex布局的全部样式
body {
    background-color: #f8f8f8;
}

.demo_wrapper {
    width: 100%;
}

.demo_item {
    -webkit-dispaly: flex;
    display: flex;
    background-color: #fff;
    padding: 10px 0;
}

.item_img {
    flex: 0 0 120px;
    width: 120px;
}

.item_img--src {
    width: 100px;
    height: 80px;
    margin-left: 10px;
    border-radius: 4px;
}

.item_body {
    flex: 1;
    overflow: hidden;
}

.item_body h1 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.column {
    display: flex;
    padding: 10px 0;
}

.column li {
    flex: 1;
    text-align: center;
}

.column li span {
    display: block;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容