您好,登錄后才能下訂單哦!
Flex是Flexible Box的縮寫,意為”彈性布局”,用來為盒狀模型提供最大的靈活性,旨在提供一個更有效地布局、對齊方式,并且能夠使容器中的子元素大小未知或動態(tài)變化情況下仍然能夠分配好子元素之間的空間。
Flex 布局的主要思想是使父容器能夠調節(jié)子元素的寬度/高度(和排列順序),從而能夠最好地填充可用空間(主要是為了適應所有類型的顯示設備和屏幕尺寸)。flex布容器能夠放大子元素使之盡可能填充可用空間,也可以收縮子元素使之不溢出。
最重要的是,flexbox布局與方向無關,不同于常規(guī)布局(基于垂直的塊(block)和基于水平的內(nèi)聯(lián)(inline))。 雖然傳統(tǒng)布局適用于頁面,但它們對于大型或復雜的應用程序布局來說缺乏靈活性(特別是在改變方向,調整大小,拉伸,收縮等方面)。
注:
采用 Flex 布局的元素,稱為 Flex 容器(flex container),簡稱"容器"。它的所有子元素自動成為容器成員,稱為 Flex 項目(flex item),簡稱"項目"。
space-around 和 space-between 這兩個值的區(qū)別不能很直觀的理解。space-between
是兩端對齊,使每個矩形子元素(flex項)之間的間隔是相等的,但兩端的矩形子元素(flex項)不會和容器之間產(chǎn)生間隔。
space-around
則會在每個矩形子元素(flex項)的兩邊產(chǎn)生一個相同大小的間隔,也就是說兩端的矩形子元素(flex項)和容器之間的間隔大小正好是兩個矩形子元素(flex項)之間間隔大小的一半(每個矩形子元素產(chǎn)生的間隔不會重疊,所以間隔變成兩倍)。
(注意 對于 align-items: stretch 來說,必須將每一個矩形子元素(flex項)的高度設置為 auto,否則 height 屬性將會覆蓋該 stretch)
對于 align-items: baseline 來說,要注意如果去掉段落標簽或者沒內(nèi)容,矩形子元素(flex項)就會按照每個矩形的底部對齊,如下圖所示:
為了更好地演示主軸和交叉軸的區(qū)別,讓我們結合 justify-content和align-items,看看在 flex-direction 兩個不同屬性值的作用下,軸心有什么不同:
align-content屬性定義了多根軸線的對齊方式。如果項目只有一根軸線,該屬性不起作用。
web前端開發(fā)學習Q-q-u-n: 731771211,分享學習的方法和需要注意的小細節(jié),不停更新最新的教程和學習方法(詳細的前端項目實戰(zhàn)教學視頻,PDF)
注:項目屬性的全面理解較為復雜,大家可以收藏后再慢慢研究
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。