Skip to content

flex 布局

1. 常见父项属性

1) flex-direction

设置主轴的方向

描述
row默认值;从左到右
row-reverse从右到左
column从上到下
column-reverse从下到上

2) justify-content

设置主轴上子元素排列方式

注:使用这个属性之前要先确定主轴是 x 轴(横轴)还是 y 轴(纵轴)

描述
flex-start默认值从头部开始 如果主轴是 x 轴,则从左到右
flex-end从尾部开始排列
center在主轴居中对齐(如果主轴是 x 轴 则水平居中)
space-around平分剩余空间(靠两边元素******外间距**为内部元素间距的一半)
space-between先两边贴边 再平分剩余空间(重要)
space-evenly平分剩余空间(所有元素等距)

space-around 和 space-evenly 的区别

3) flex-wrap

设置子元素是否换行(默认不换行)

描述
nowrap**默认值;**不换行
wrap换行
wrap-reverse项目会以反方向换行

4) align-items

设置侧轴上的子元素排列方式(单行)

描述
flex-start**默认值;**从上到下
flex-end从下到上
center垂直居中
stretch拉伸(子元素不能设置高度,否则无效果)
baseline项目的第一行文字的基线对齐。

5) align-content

设置侧轴上的子元素的排列方式(多行)

描述
stretch默认值。行拉伸以占据剩余空间。
center朝着弹性容器的中央对行打包。
flex-start朝着弹性容器的开头对行打包。
flex-end朝着弹性容器的结尾对行打包。
space-between行均匀分布在弹性容器中。
space-around行均匀分布在弹性容器中,两端各占一半。

6) flex-flow

复合属性,相当于同时设置了 flex-direction 和 flex-wrap

描述
flex-direction可能的值:row, row-reverse ,column,column-reverse 默认值为 "row"。规定弹性项目的方向。
flex-wrap可能的值:nowrap,wrap,wrap-reverse默认值为 "nowrap"。规定弹性项目是否应换行。

2. 常见的子项属性

1) flex

子项目占的份数

2) align-self

允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。

描述
auto默认值。元素继承了它的父容器的 align-items 属性。如果没有父容器则为 "stretch"。
stretch元素被拉伸以适应容器。
center元素位于容器的中心。
flex-start元素位于容器的开头。
flex-end元素位于容器的结尾。
baseline元素位于容器的基线上。

3) order

定义项目的排列顺序。数值越小,排列越靠前,默认为 0