公共样式:

    <style>
* {
margin: 0;
padding: 0;
} .has-flex {
display: flex;
}
</style>

垂直居中 子元素左右分布

css

        .father-one {
width: 100%;
height: 200px;
background-color: #fffcef;
align-items: center; /*纵轴)方向上的对齐方式。*/
justify-content: space-between; /* 均匀排列每个元素 首个元素放置于起点,末尾元素放置于终点,中间元素的中间间隔相等 */
justify-content: space-around; /* 均匀排列每个元素 每个元素周围分配相同的空间 */
justify-content: space-evenly; /* 均匀排列每个元素 每个元素之间的间隔相等 */
} .fa-one-child1 {
height: 30px;
width: 30px;
background-color: #a6acde;
} .fa-one-child2 {
height: 40px;
width: 40px;
background-color: #e4b9f0;
} .fa-one-child3 {
height: 50px;
width: 50px;
background-color: #f3b009;
} .fa-one-child4 {
height: 60px;
width: 60px;
background-color: #f77c4f;
}

html

<!--垂直居中 子元素左右分布 star-->
<h3>垂直居中 子元素左右分布</h3>
<div class="father-one has-flex">
<div class="fa-one-child1"></div>
<div class="fa-one-child2"></div>
<div class="fa-one-child3"></div>
<div class="fa-one-child4"></div>
</div>
<!--垂直居中 子元素左右分布 end-->

水平垂直居中

css

        .father-two {
width: 100%;
height: 200px;
align-items: center; /*纵轴)方向上的对齐方式。*/
justify-content: center; /* 横轴)方向上的对齐方式*/
background-color: red;
} .child {
width: 50%;
height: 60px;
background-color: rosybrown;
}

html

<!--水平垂直居中 star-->
<h3>水平垂直居中</h3>
<div class="father-two has-flex">
<div class="child"></div>
</div>
<!--水平垂直居中 end-->

水平垂直居中 图标在上文字在下

css

        .father-three {
height: 80px;
background-color: #f77c4f;
align-items: center;
justify-content: center;
flex-direction: column;
}

html

<!--水平垂直居中 图标在上文字在下 star-->
<h3>水平垂直居中 图标在上文字在下</h3>
<div class="has-flex father-three">
<i class="fa fa-file-text-o" aria-hidden="true"></i>
<p>测试</p>
</div>
<!--水平垂直居中 图标在上文字在下 end-->

子元素平分父元素,且自适应等高

css

        .father-four {
background-color: #ffd5eb;
} .fa-four-child {
flex: 1;
text-align: center;
background-color: #ffffff;
border: 1px solid;
}

html

<!--子元素平分父元素,且自适应等高   star-->
<h3>子元素平分父元素,且自适应等高 </h3>
<div class="has-flex father-four">
<div class="fa-four-child">第一个</div>
<div class="fa-four-child">第二个</div>
<div class="fa-four-child">第三个</div>
<div class="fa-four-child" style="height: 90px">第四个</div>
</div>
<!--子元素平分父元素,且自适应等高 end-->

子元素平分父元素,两边对齐中间自适应相同宽度间隔,且自动换行

css

        .father-five {
height: 100px;
background-color: #a6acde;
justify-content: space-between;
flex-wrap: wrap;
} .fa-five-child {
width: 21%;
background-color: #f77c4f;
}

html

<!--子元素平分父元素,两边对齐中间自适应相同宽度间隔,且自动换行   star-->
<h3>子元素平分父元素,两边对齐中间自适应相同宽度间隔,且自动换行 </h3>
<div class="has-flex father-five">
<div class="fa-five-child">第一个</div>
<div class="fa-five-child">第二个</div>
<div class="fa-five-child">第三个</div>
<div class="fa-five-child">第四个</div>
<div class="fa-five-child">第五个</div>
<div class="fa-five-child">第六个</div>
<div class="fa-five-child">第七个</div>
<div class="fa-five-child">第八个</div>
</div>
<!--子元素平分父元素,两边对齐中间自适应相同宽度间隔,且自动换行 end-->

三栏布局,两边固定宽中间自适应

css

        .father-six {
height: 100px;
} .one-child,
.three-child {
width: 300px;
background-color: #a6acde;
} .two-child {
flex: 1;
background-color: #eeeeee;
}

html

<!--三栏布局,两边固定宽中间自适应   star-->
<h3>三栏布局,两边固定宽中间自适应 </h3>
<div class="has-flex father-six">
<div class="fa-six-child one-child">第一个</div>
<div class="fa-six-child two-child">第二个</div>
<div class="fa-six-child three-child">第三个</div>
</div>
<!--三栏布局,两边固定宽中间自适应 end-->

对于Flex 布局更详细的讲解请移步:Flex 布局教程:语法篇

相关css面试题:两边宽度已知,如何让中间自适应

最新文章

  1. [转载]config文件的一个很好的实现
  2. Button的enabled和clickabled的区别
  3. SQL Server Management Studio无法记住密码
  4. the useful for loop
  5. NOI模拟赛 Day1
  6. Android 回到底部和返回顶部实现
  7. js文件的装载和执行
  8. Jenkins参数化构建
  9. DJANGO中filter_horizontal和raw_id_fields的作用
  10. CI框架中自定义view文件夹位置
  11. Android Studio 中快速提取方法
  12. javaWeb学习总结(10)- Filter(过滤器)学习(2)
  13. [JSOI 2008]最大数
  14. Python高效编程技巧
  15. vab set dim
  16. web开发常见bug汇总
  17. SCIP | 数学规划求解器SCIP超详细的使用教程
  18. 匿名(无账号密码)从ftp服务器下载文件
  19. 1143: [CTSC2008]祭祀river(最长反链)
  20. js 触摸事件 touch

热门文章

  1. iftop使用
  2. bat-静默安装winrar并设置系统级环境变量
  3. Wabacus框架中inputbox和datepicker实现时间日历
  4. SpringBoot:Redis中的zset
  5. nginx概述及配置
  6. 【Unity基础知识】基础游戏单位GameObject中常用的属性和API
  7. HBase学习(四) 二级索引 rowkey设计
  8. Java的基础语法01
  9. 二重循环中的break与continue
  10. java------注释、关键字、字面量