實現 flex 佈局須要先指定一個容器,任何一個容器均可以被指定爲 flex 佈局,這樣容器內部的元素就可使用 flex 來進行佈局瀏覽器
.container { display: flex | inline-flex; //能夠有兩種取值 }
分別生成一個塊狀或行內的 flex 容器盒子。簡單說來,若是你使用塊元素如 div,你就可使用 flex,而若是你使用行內元素,你可使用 inline-flex。佈局
須要注意的是:當時設置 flex 佈局以後,子元素的 float、clear、vertical-align 的屬性將會失效。flex
.container { flex-direction: row | row-reverse | column | column-reverse; }
默認值:row,主軸爲水平方向,起點在左端。spa
row-reverse:主軸爲水平方向,起點在右端3d
column:主軸爲垂直方向,起點在上沿code
column-reverse:主軸爲垂直方向,起點在下沿blog
.container { flex-wrap: nowrap | wrap | wrap-reverse; }
默認值:nowrap 不換行,即當主軸尺寸固定時,當空間不足時,項目尺寸會隨之調整而並不會擠到下一行。繼承
wrap:項目主軸總尺寸超出容器時換行,第一行在上方it
wrap-reverse:換行,第一行在下方io
.container { flex-flow: <flex-direction> || <flex-wrap>; }
.container { justify-content: flex-start | flex-end | center | space-between | space-around; }
默認值: flex-start 左對齊
flex-end:右對齊
center:居中
space-between:兩端對齊,項目之間的間隔相等,即剩餘空間等分紅間隙。
space-around:每一個項目兩側的間隔相等,因此項目之間的間隔比項目與邊緣的間隔大一倍。
.container { align-items: flex-start | flex-end | center | baseline | stretch; }
默認值爲 stretch 即若是項目未設置高度或者設爲 auto,將佔滿整個容器的高度。
flex-start:交叉軸的起點對齊
flex-end:交叉軸的終點對齊
center:交叉軸的中點對齊
baseline: 項目的第一行文字的基線對齊
.container { align-content: flex-start | flex-end | center | space-between | space-around | stretch; }
stretch(默認值):若是項目未設置高度或設爲auto,將佔滿整個容器的高度。
flex-start:軸線所有在交叉軸上的起點對齊
flex-end:軸線所有在交叉軸上的終點對齊
center:軸線所有在交叉軸上的中間對齊
space-between:軸線兩端對齊,之間的間隔相等,即剩餘空間等分紅間隙。
space-around:每一個軸線兩側的間隔相等,因此軸線之間的間隔比軸線與邊緣的間隔大一倍
.item { order: <integer>; }
.item { flex-basis: <length> | auto; }
.item { flex-grow: <number>; }
若是全部項目的flex-grow屬性都爲1,則它們將等分剩餘空間(若是有的話)。若是一個項目的flex-grow屬性爲2,其餘項目都爲1,則前者佔據的剩餘空間將比其餘項多一倍
.item { flex-shrink: <number>; }
若是全部項目的flex-shrink屬性都爲1,當空間不足時,都將等比例縮小。若是一個項目的flex-shrink屬性爲0,其餘項目都爲1,則空間不足時,前者不縮小
flex屬性是flex-grow, flex-shrink 和 flex-basis的簡寫,默認值爲0 1 auto。後兩個屬性可選。
.item { flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ] }
.item { align-self: auto | flex-start | flex-end | center | baseline | stretch; }
align-self屬性容許單個項目有與其餘項目不同的對齊方式,可覆蓋align-items屬性。默認值爲auto,表示繼承父元素的align-items屬性,若是沒有父元素,則等同於stretch。