該文是本人的譯文,如想看原文請點擊傳送門
如需轉(zhuǎn)載請注明來源與作者
講解分為兩部分粹庞,一部分講解的是
container
的屬性慎王,另一部分講解children
屬性弧腥。本文講解
children
的屬性买喧。講解的另外一篇傳送門。
本文講的是在flex items
上的屬性
order
在默認情況下匆赃,
flex items
排布順序是按照資源的順序淤毛。但是,order
屬性可以控制在flex container
下的子元素的順序算柳。
.item{
oreder: <整數(shù)> ;
}
flex-grow
這個屬性定義了彈性元素擴展的能力低淡。它能夠接受無單位的值來用作占比。它規(guī)定了彈性容器下的彈性元素可以占據(jù)多少的可用空間瞬项。
如果所有的items都有flex-grow
等于1蔗蹋,容器內(nèi)的剩余空間會等分地分配到每一個元素。如果其中某一個元素有是2的值囱淋,那么這個元素會占據(jù)的剩余空間相當(dāng)于其他元素的2倍猪杭。
.item{
flex-grow: <number>;/*默認值為0,并且其中負值是非法的妥衣。*/
}
flex-shrink
這個屬性定義了彈性元素會在必要的時候會收縮皂吮。
.item {
flex-shrink: <number>; /* 默認值為1 ,并且負值是非法的*/
}
flex-basis
這個屬性定義在剩余空間被分配之前默認情況下元素的大小税手。這個值可以是長度(比如:20%蜂筹,5rem等等)或者是一個關(guān)鍵詞。
auto
關(guān)鍵詞意味著"著眼于我的寬度或者高度"(這會臨時用于主尺寸關(guān)鍵字芦倒,直到被拋棄)艺挪。關(guān)鍵詞`content指"內(nèi)容決定尺寸"-這個關(guān)鍵字還沒有得到較好的支持,所以測試比較困難兵扬,并且難以得到它的兄弟元素最大內(nèi)容最小內(nèi)容和最佳內(nèi)容麻裳。
.item{
flex-basis:<length>|| auto ; /*默認值:auto*/
}
如果設(shè)置為0,包圍內(nèi)容的額外空間不會計算在內(nèi)器钟。如果設(shè)置為
auto
津坑,那么剩余空間將會按照flex-grow
進行分配。
flex
這是
flex-grow
,flex-shrink
,flex-basis
的簡寫俱箱。第二個和第三個參數(shù)是可選的(flex-shrink
,flex-basis
是可選項)国瓮。flex的默認值是0灭必,1狞谱,auto;
···
.item{
flex:none | [ <'flex-grow'> <'flex-shrink'>?|| <'flex-basis'> ]
}
···
推薦你使用簡寫的屬性禁漓,而不是去設(shè)置單一的屬性跟衅。簡寫設(shè)置其他值是非法的。
align-self
這個屬性允許默認的對齊方被覆蓋(或者通過align-self指定一個元素)
.item{
align-self: auto | flex-start | flex-end | center | baseline | stretch;
}
NOTE:
float
,clear
,vertical-align
對彈性元素不起作用