Skip to content

CSS Flexbox 弹性布局 详解

所有常用的 flexbox 属性,按作用对象分组:容器和项目。每行将属性与常用值及其作用配对。

Flexbox 沿单一维度排列元素:一行或一列。在父元素上设置 display: flex,它就成为 flex 容器;其直接子元素成为 flex 项目。容器属性控制沿主轴和交叉轴的分布;项目属性控制单个项目如何伸展、收缩或对齐自身。一维的工具栏、行和居中布局,请选用 flexbox。

参考表格 · 13 条目
13 of 13 rows
容器
flex | inline-flex将该元素变为 flex 容器。
row | column | row-reverse | column-reverse设置项目排列所沿的主轴。
flex-start | center | space-between | space-around | space-evenly沿主轴分布项目。
stretch | center | flex-start | flex-end | baseline沿交叉轴对齐项目。
flex-start | center | stretch | space-between交叉轴有多余空间时,对齐换行后的各行。
nowrap | wrap | wrap-reverse让项目换到新行,而不是收缩。
0.5rem | 8px 16px项目之间的间距,水平和垂直方向。
项目
0 | 1 | 2项目相对于同级元素吸收多少剩余空间。
0 | 1空间不足时项目收缩的程度。
auto | 200px | 50%分配剩余空间之前的起始尺寸。
1 | 1 0 auto | 0 0 200pxgrow shrink basis 的简写。
auto | center | flex-start | flex-end | stretch为单个项目覆盖容器的 align-items。
0 | -1 | 2不改动源码顺序即可重新排列项目。