1. flex (弹性布局)
主要提供简便、完整、响应式布局解决方法,设置flex布局后元素的 float、clear、vertical-align属性将失效
主要参数:
-
flex-direaction
-
决定主轴的方向
- 参数: - row(默认值): 主轴为水平方向,起点在左端 - row-reverse: 同上,起点在右端 - column: 主轴为垂直方向,起点在上方 - column-reverse: 同上,起点在下方
-
-
flex-wrap
-
如果默认轴线排序不下,则换行
- 参数: - nowrap(默认): 不换行 - wrap: 换行,第一行在上方 - wrap-reverse: 换行,第一行在下方
-
-
flex-flow
- 是flex-direaction 和 flex-wrap的简写
-
justify-content
-
在主轴(水平)上的对齐方式
- 参数: - flex-start(默认值): 左对齐 - flex-end: 右对齐 - center: 居中 - space-between: 两端对齐,项目之间间隔相等 - space-around: 项目两侧有间隔,类似margin后的效果
-
-
align-items
-
定义项目交叉(垂直)轴上如何对齐
- 参数: - flex-start: 起点对齐 - flex-end: 重点对齐 - center: 重点对齐 - baseline: 第一行文字的基线对齐 - stretch: 如果项目未设置高度或者auto,将占满整个容器
-
-
align-content
-
多根轴线的对齐方式,单一不起作用
- 参数: - flex-start: 交叉轴 起点对齐 - flex-end: 交叉轴 终点对齐 - center: 交叉轴 中点对齐 - space-between: 交叉轴两端对齐,轴线之间平均分布 - sapce-around: 同margin - stretch: 占满整个交叉轴
-
其他参数
-
order
定义上项目的排列顺序,数值越小,排列越靠前,默认为0
-
flex-grow
-
定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大
-
flex-shrink
-
定义项目的缩小比例,默认为1,空间不足,该项目将缩小
-
flex-basis
-
在分配多余空间之前,先计算是否有多余空间
-
flex
-
上面三个的简写
-
align-self
-
允许单个项目和其他项目有不一样的对齐方式,可覆盖align-items属性, 默认auto,表示继承父元素的align-items属性,如果没有父元素则等同于stretch