Flex 布局,可以简便、完整、响应式地实现各种页面布局。它得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
任何一个容器都可以指定为 Flex 布局。
.box{
display: flex;
}
行内元素也可以使用 Flex 布局。
.box{
display: inline-flex;
}
注意,设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效。
采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目(flex item),简称"项目"。
main axis: flex布局中水平主轴 ,x轴。
main start: 主轴的开始位置(与边框的左交叉点)。
main end: 主轴的结束位置(与边框的交叉点)。
cross axis: flex布局中分水平主轴 ,x轴。
cross start: 主轴的开始位置(与边框的左交叉点)。
cross end: 主轴的结束位置(与边框的交叉点)。
二、容器的属性
- flex-direction
属性决定主轴的方向(即项目的排列方向)
row(默认值):主轴为水平方向,起点在左端。
row-reverse:主轴为水平方向,起点在右端。
column:主轴为垂直方向,起点在上沿。
column-reverse:主轴为垂直方向,起点在下沿。
项目中 ,一般row和column用的比较多。
-
flex-wrap
默认情况下,项目都排在一条线(又称"轴线")上。flex-wrap属性定义,如果一条轴线排不下,如何换行。