自適應布局display:-webkit-box的用法


在web布局中,我們經常使用的是display:inline-block,display:flex,這些,但其實在進行移動端設備自適應布局中,-webkit-box布局更加合適

不同的瀏覽器有不同的前綴,這里使用-webkit示例

Mozilla-----------------display:-moz-box

Webkit------------------display:-webkit-box

As specified-----------display:box

首先,需要了解的是具備的屬性

-webkit-box-flex 在子元素上設置,屬於子元素之間的比例,值為數值即可 默認值:1(數值,按比例分配)
-webkit-box-orient 在父元素設置,子元素的排列方式 vertical(垂直)/horizontal(水平)/inline-axis(默認值,橫向排列,映射為 horizontal)/block-axis(沿着塊軸來排列子元素,映射為 vertical)/inherit(從父元素繼承 box-orient 屬性的值)
-webkit-box-align 在父元素設置,子元素垂直方向的對齊方式

start(對於正常方向的框,每個子元素的上邊緣沿着框的頂邊放置。對於反方向的框,每個子元素的下邊緣沿着框的底邊放置。)/end(對於正常方向的框,每個子元素的下邊緣沿着框的底邊放置。對於反方向的框,每個子元素的上邊緣沿着框的頂邊放置。)/center(均等地分割多余的空間,一半位於子元素之上,另一半位於子元素之下)/baseline(如果 box-orient 是inline-axis或horizontal,所有子元素均與其基線對齊)/stretch(默認值,拉伸子元素以填充包含塊)

-webkit-box-direction 在父元素上設置,排列順序 normal(默認,以默認方向顯示子元素)/reverse(以反方向顯示子元素。)/inherit(從子元素繼承 box-direction 屬性的值)
-webkit-box-flex-group 在子元素上設置,以組為單位的流體系數  默認值:1
-webkit-box-ordinal-group 在子元素上設置,以組為單位的排列方向   默認值:1
-webkit-box-pack 在父元素上設置,子元素水平方向的對齊方式

center(均等地分割多余空間,其中一半空間被置於首個子元素前,另一半被置於最后一個子元素后)

/justify(在每個子元素之間分割多余的空間(首個子元素前和最后一個子元素后沒有多余的空間))

/start[對於正常方向的框,首個子元素的左邊緣被放在左側(最后的子元素后是所有剩余的空間)對於相反方向的框,最后子元素的右邊緣被放在右側(首個子元素前是所有剩余的空間)]

/end[對於正常方向的框,最后子元素的右邊緣被放在右側(首個子元素前是所有剩余的空間)。對於相反方向的框,首個子元素的左邊緣被放在左側(最后子元素后是所有剩余的空間)。]

-webkit-box-lines 子元素是否換行,類似word-wrap和word-break  single(將被放置在單個行或列的所有子元素(元素不適合只會被認為是溢出))/multiple(box允許擴大到多行,以適應其所有子項)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

eg:-webkit-box-flex案例:

 

 

 效果圖:

 

 

 當我們把2的比例系數改為2時:

 

 

 效果圖:會重新分配:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM