這篇文章主要介紹了關於css3彈性盒模型的介紹,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
Css3引入了新的盒模型——彈性盒模型決定一個盒子在其他盒子中的分布方式以及如何處理可用的空間,使用該模型,可以很輕鬆的建立自適應瀏覽器視窗的流動布局或自適應字型大小的彈性布局
Css3引入了新的盒模型——彈性盒模型,該模型決定一個盒子在其他盒子中的分布方式以及如何處理可用的空間。這與XUL(Firefox使用的使用者互動語言)相似,其它語言也使用相同的盒模型,如XAML 、GladeXML。使用該模型,可以很輕鬆的建立自適應瀏覽器視窗的流動布局或自適應字型大小的彈性布局。本文的例子使用以下的HTML代碼:
<body> <p id="box1">1</p> <p id="box2">2</p> <p id="box3">3</p> </body>
傳統的盒模型基於HTML流在垂直方向上排列盒子。使用彈性盒模型可以規定特定的順序,也可以反轉之。要開啟彈性盒模型,只需設定擁有子盒子的盒子的display的屬性值為box(或inline-box)即可。
display: box;
水平或垂直分布
“box-orient”定義分布的座標軸:vertical和horizional。這兩個值定義盒子如何顯示,
body{ display: box; box-orient: horizontal; }
反向分布
“box-direction”可以設定盒子出現的順序。預設情況下,只需定義分布座標軸——box隨html流分布。如果為水平座標軸,則從左至右分布;垂直座標軸則從上到下分布。定義“box-direction”的屬性值為“reverse”,則反轉盒子的排列順序。
body { display: box; box-orient: vertical; box-direction: reverse; }
具體分布
屬性“box-ordinal-group”定義盒子分布的順序。可以隨意的控制其分布順序。這些組以一個從“1”開始的數字定義,盒模型將首先分布這些組,所有這些盒子將在每個組中。分布將從小到大排列。
body { display: box; box-orient: vertical; box-direction : reverse; } #box1 {box-flex:1;box-ordinal-group: 2;}#box2 {box-flex:2;box-ordinal-group: 2;} #box3 {box-flex:2;box-ordinal-group: 1;}
盒子尺寸
預設情況下,盒子並不具有彈性,如果box-flex的屬性值至少為1時,則變得富有彈性。box-flex如何對父容器的寬度進行劃分,三個子塊分別設定了1、2、2,也就是把這個父容器分成5份,分別佔據了父結構寬度的1/5(100px)、2/5(200px)、2/5(200px)。如果盒子不具有彈性,它將儘可能的寬使其內容可見,且沒有任何溢出,其大小由“width”和“height”來決定(或min-height、min-width、max-width、max-height)。
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!