flex布局是什么

Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性

任何一个容器都可以指定为 Flex 布局

.box {
	display: flex;
}

// 行内元素使用flex布局
.box {
	display: inline-flex;
}

// Webkit 内核的浏览器,必须加上-webkit前缀
.box{
  display: -webkit-flex; /* Safari */
  display: flex;
}

注意:设为 Flex 布局以后,子元素的floatclearvertical-align属性将失效

基本概念

设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效

容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做cross start,结束位置叫做cross end

项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size

容器的属性

以下6个属性设置在容器上。

flex-direction

主轴方向:(即项目的排列方向)