前言:文章是本人闲时所写,方便自己以后查阅,如若有幸被您阅读的话,备感荣幸,文章仅为个人理解,如内容有误还望告知,感谢!!!
display:flex;为弹性布局模式,用于给容器设置,弹性盒子是CSS3的一种新布局模式。用于给容器设置的属性共有六种。
- flex-direction
- flex-wrap
- flex-flow
- justify-content
- align-item
- align-content
1.flex-direction属性:决定主轴的方向(即项目的排列方向)。
.box {
flex-direction: row | row-reverse | column | column-reverse;
}
row(默认):主轴水平方向,起点在左端
- row-reverse:主轴水平方向,起点在右端
- column:主轴垂直方向,起点在上边沿
- column-reserve:主轴垂直方向,起点在下边沿
2.flex-wrap属性:定义换行情况
默认情况下,项目都排列在一条轴线上,如果要多行排列,就要用这个属性。
.box{
flex-wrap: nowrap | wrap | wrap-reverse;
}
- nowrap(默认):不换行
- wrap:换行,第一行在上方
- wrap-reverse:换行,第一行在下方
3.flex-flow属性:flex-direction和flex-wrap的简写
flex-flow属性:flex-direction和flex-wrap的简写,默认row nowrap
4.justify-content属性:定义项目在主轴上的对齐方式。
.box {
justify-content: flex-start | flex-end | center | space-between | space-around ;
}
- flex-start(默认值):左对齐
- flex-end:右对齐
- center:居中
- space-between:两端对齐,项目之间间隔相等
- space-around:每个项目两侧的间隔相等,即项目之间的间隔比项目与边框的间隔大一倍
5.align-items属性:定义在交叉轴上的对齐方式
.box{
align-items: flex-start | flex-end | center | baseline | stretch;
}
- flex-start:起点对齐
- flex-end:终点对齐
- center:中点对齐
- baseline:项目的第一行文字的基线对齐
- stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度
6.align-content属性:定义多根轴线的对齐方式
如果项目只有一根轴线,该属性不起作用。
所以,容器必须设置flex-wrap:···;
.box{
align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
flex-start:与交叉轴的起点对齐
flex-end:与交叉轴的终点对齐;
center:与交叉轴的中点对齐;
space-between:与交叉轴的两端对齐,轴线之间的间隔平均分布
space-around:每根轴线两侧的间隔相等,即轴线之间的间隔比轴线与边框的间隔大一倍
stretch(默认值):轴线占满整个交叉轴