css - flex 弹性布局
弹性布局:
如何一个容器都可以指定为弹性布局,当我们为父盒子设置为弹性布局之后,子元素的float,clear,vertical-align属性将失效
通过给父元素设置flex属性,来控制子盒子的排列方式与位置
flex父项属性:
1.flex-direction - 设置子元素的排列方向(设置主轴x或者是y)
| 属性值 | 说明 |
| row | (默认值)从左到右 |
| row-reverse | 从右到左 |
| column | 从上到下 |
| column-reverse | 从下到上 |
<style> .father { display: flex; flex-direction: row(默认值); } </style>
2.justify-content - 设置子元素的排列方式,是根据主轴排列的,x或者是y(类似于浮动,但比浮动更高级)
| 属性值 | 说明 |
| flex-start | (默认值) 从头部开始排列 |
| flex-end | 从尾部开始排列 |
| center | 居中对齐 |
| space-around | 平分剩余空间 |
| space-between | 先两边贴边,再平分剩余空间 |
.father { display: flex; justify-content: flex-start(默认值); }
3.flex-wrap - 设置子元素是否换行,默认不换行,宽度不够会缩小子元素的宽度
| 属性值 | 说明 |
| nowrap | (默认值)不换行 |
| wrap | 换行 |
.father { display: flex; flex-wrap: nowrap(默认值); }
4.align - 设侧轴的排列方式
align-items单行起作用的属性(flex-wrap:nowrap)
| 属性值 | 说明 |
| flex-start | (默认值) 从头部开始排列 |
| flex-end | 从尾部开始排列 |
| center | 居中对齐 |
| stretch | (默认值)拉伸到与父元素一样高 |
align-content多行起作用的属性(flex-wrap:wrap)
| 属性值 | 说明 |
| flex-start | (默认值) 从头部开始排列 |
| flex-end | 从尾部开始排列 |
| center | 居中对齐 |
| space-around | 平分剩余空间 |
| space-between | 先两边贴边,再平分剩余空间 |
| stretch | (默认值)拉伸到与父元素一样高 |
flex子项属性:
1.flex - 分配剩余空间,默认值为0,数值越大分配的剩余空间越多,都为1时 平均分配剩余空间
.son { flex: 0(默认值); }
2.align-self - 设置某一项不同的排列方式
| 属性值 | 说明 |
| flex-start | (默认值) 从头部开始排列 |
| flex-end | 从尾部开始排列 |
| center | 居中对齐 |
| stretch | (默认值)拉伸到与父元素一样高 |
3.order - 设置排列顺序 数值越小,越靠前 默认·为0
浙公网安备 33010602011771号