您的位置:首页 > 其它

Flexbox

2016-01-06 15:41 429 查看
http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html http://www.w3cplus.com/css3/flexbox-basics.html flexbox优点:
1 如果元素容器没有足够的空间,我们无需计算每个元素的宽度,就可以设置他们在同一行;
2 可以快速让他们布局在一列;
3 可以方便让他们对齐容器的左、右、中间等;
4 无需修改结构就可以改变他们的显示顺序;
5 如果元素容器设置百分比和视窗大小改变,不用提心未指定元素的确切宽度而破坏布局,因为容器中的每个子元素都可以自动分配容器的宽度或高度的比例。
注意,设为Flex布局以后,子元素的
float
clear
vertical-align
属性将失效。
footer {display: flex;flex-flow: row wrap;}

flex-flow: flex-direction(伸缩流的方向)和flex-wrap(伸缩行换行)

flex-flow
属性是
flex-direction
属性和
flex-wrap
属性的简写形式,默认值为
row nowrap

flex-direction:row、row-reverse、column、column-reverse

row
(默认值):主轴为水平方向,起点在左端。
row-reverse
:主轴为水平方向,起点在右端。
column
:主轴为垂直方向,起点在上沿。
column-reverse
:主轴为垂直方向,起点在下沿。

flex-wrap:nowrap、wrap、wrap-reverse

nowrap(默认):不换行。

wrap:换行,第一行在下方。

wrap-reverse:换行,第一行在上方。

设置flexbox子元素(伸缩项目)的对齐:

侧轴(垂直)对齐伸缩项目----align-items:flex-start/baseline(项目的第一行文字的基线对齐)、[b]flex-endcenterstretch[/b]
等同于 align-self




主轴对(水平)齐伸缩项目----justify-content:flex-start、[b]flex-end、[b]centerspace-between、space-around[/b][/b]



伸缩项目堆栈伸缩航----align-content:flex-start、[b]flex-end、[b]centerspace-between、space-around、stretch[/b][/b]



改变元素布局顺序:order:flex-grow、flex-shrink、flex-basis;
flex-grow为数值 数值取值越大,越排在后面。并且order可以取负值 flex:1;
flex-basis为数值+宽度 flex:1 200px;
flex-shrink称为收缩比率,这个值只有伸缩项目在没主轴方向溢出伸缩容器才会发挥作用. flex:1 2 600px
flex
属性是
flex-grow
,
flex-shrink
flex-basis
的简写,默认值为
0 1 auto
。后两个属性可选。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  center display footer