1、display:box;html
在元素上设置该属性,可以使其子代排列在同一水平上,相似display:inline-block;。浏览器
2、可在其子代设置以下属性flex
前提:使用以下属性,必须在父代设置display:box;orm
1.box-flex:number;htm
1)占父级元素宽度的number份io
2)若子元素设置固定宽度,则该子元素应用固定宽度,其余未设置固定宽度的字元素将余下的父级宽度(父级-已设置固定宽度的子代元素的总宽度按 number占份数margin
3)若子元素有margin值,则按余下(父级宽度-子代固定总宽度-总margin值)宽度占number份di
2.box-orient:horizontal/verticalinline-block
在父级上设置该属性,则子代按水平排列或竖直排列。display
注:全部主流浏览器不支持该属性,必须加上前缀。
1)horizontal 水平排列,子代总width=父级width。若父级固定宽度,则子代设置的width无效,子代会撑满父级宽度。
2)vertical 垂直排列,子代总height=父级height。若父级固定高度,则子代设置的height无效,子代会撑满父级高度。
3.box-direction:normal/reverse
在父级上设置该属性,确认子代的排列顺序。
1)normal 默认值,子代按html顺序排列
2)reverse 反序
4.box-align:start/end/center/stretch
在父级设置,子代的垂直对齐方式。
1)start 垂直顶部对齐
2)end 垂直底部对齐
3)center 垂直居中对齐
4)stretch 拉伸子代的高度,与父级设置的高度一致。子代height无效。
5.box-pack:start/end/center
在父级设置,子代的水平对齐方式。
1)start 水平左对齐
2)end 水平右对齐
3)center 水平居中对齐