Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。
任何一个容器都可以指定为Flex布局。
学习flex推荐使用flexbox froggy,一个学习CSS flexbox布局的小游戏,事半功倍!
使用
行内元素也可以使用Flex布局。
1 | .box{ |
Webkit内核的浏览器,必须加上-webkit前缀。
1 | .box{ |
注意,设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。
主要的6个属性:
- flex-direction - 确定主轴方向
- flex-wrap - 定义怎么换行
- flex-flow - 上面两个属性的简写
- justify-content - 主轴对齐方式
- align-items - 主轴垂直方向对齐方式
- align-content - 多根轴线怎么对齐方式
flex-direction属性决定主轴的方向(即项目的排列方向)。
1 | .box { |
默认情况下,项目都排在一条线(又称”轴线”)上。flex-wrap属性定义,如果一条轴线排不下,如何换行。
1 | .box{ |
flex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap。
1 | .box { |
justify-content属性定义了项目在主轴上的对齐方式。
1 | .box { |
align-items属性定义项目在交叉轴上如何对齐。
1 | .box { |
align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用
1 | .box { |