flex弹性盒布局

点击这里,你可以查看浏览器对于 flex 的支持程度。
本文主要介绍和 flex 相关的属性。

  1. 所有的属性分为两类:父容器的属性和子项的属性
  2. 所有的属性值几乎都和排列、对齐、占地面积3类特性相关

父容器属性

属性 作用 分类
flex-direction 定义子项在容器内的排列方向 排列
flex-wrap 定义子项在容器内的换行效果 排列
flex-flow flex-direction和flex-wrap的复合属性 排列
justify-content 定义子项在容器内水平对齐方式 对齐
align-items 定义 子项在容器内垂直对齐方式 对齐
align-content 定义多行子项在容器内整体垂直对齐方式 对齐

子项属性

属性 作用 分类
order 定义子项们的排列顺序 排列
flex-grow 定义子项宽度之和不足父元素宽度时,子项拉伸的比例 占地面积
flex-shrink 定义子项宽度之和超过父元素宽度时,子项缩放的比例 占地面积
flex-basis 定义初始宽度,若子项宽度之和超过父元素宽度时,子项按照flex-basis的比例缩放 占地面积
align-self 定义单个子项与其他项目不一样的对齐方式 对齐