flex布局

display:flex

一个容器 设置了display:flex属性,就定义了一个flex容器.它的直接子元素会接受这个flex环境.

flex-direction

.container{
    flex-direction: row | row-reverse | column | column-reverse;
}

设置子元素在父容器中的位置
1.row默认值,水平从左到右
2.row-reverse,从右到左
3.column,垂直从上到下
4.column-reverse,垂直从下到上

flex-wrap

设置换行

.container{
  flex-wrap: nowrap | wrap | wrap-reverse;
}
依次为:不换行,换行,换行切颠倒顺序

flex-flow

flex-directionflex-wrap的缩写,默认值row nowrap
flex-flow: <'flex-direction'> || <'flex-wrap'>

justify-content

设置子元素在水平方向上的对齐方式

.container{
  justify-content: flex-start | flex-end | center | space-between | space-around;
}
分别是水平靠左,水平靠右,水平居中,均匀分布,均匀分布且两端保留子元素间距一半(空间包裹)

align-items

设置子元素在垂直方向上的对齐方式

.container{
  align-items: flex-start |  flex-end | center | baseline | stretch;
}
分别是垂直靠上,垂直靠下,垂直居中,垂直基线对齐,垂直方向拉伸

align-content

设置子元素整体内容的在垂直方向上的对齐方式

.container{
  align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
分别是整体靠上,整体靠下,整体居中,整体垂直拉伸,整体垂直均匀排列,整体均匀分布且垂直两端保留间距一半空间

用在子元素上的属性

order

默认情况下flex order会按照书写顺序排列,可以通过order属性改变,数值小的在前面,也可以是负数.

.item {
  order: ;
}

flex-grow

.item {flex-grow: 1}
按比例瓜分父元素剩余的空间,1即分一份.不写默认是0

flex-basis

基准宽度

flex-shrink

按比例吸收超出的空间.不写默认是1

flex

flex-grow,flex-shrink,flex-basis的缩写

.item{
  flex: none | [ <'flex-grow'> <'flex-shrink'> || <''flex-basis'>]
}

aglin-self

单独修改自身的属性

你可能感兴趣的:(flex布局)