css等比例劃分,在css布局中是比較重要的,下面分享幾種常用方法和**一下相容性。
emmet html**:ul.float-ul>li*5>.con>h3+p
.float-ul
.float-ul li
該樣式相容性較好,但是無法實現當裡面的列增多時比例也隨著變化,必須手動修改,當然你也可以使用乙個js來調整了。
參考之前寫過的inline-block替換float的**,使用該樣式還可以實現布局居中等塊級元素所具有的特性。
.inline-ul
.inline-ul li
@media screen and (-webkit-min-device-pixel-ratio:0)
}
我們知道**可以根據內容進行劃分,css也有乙個樣式是display:table來實現類似**的布局,不過不支援ie8以下瀏覽器。
.table-cell
.table-cell li
舊語法:·
.flex-ul
.flex-ul li
新語法:
.flex-ul
.flex-ul li
該方法只適用於高階瀏覽器,ie10以下的還是算了。具體介紹
例如bootstrap的柵格化系統
//code from
...
.col-md-3
@media (min-width: 992px)
/* 父級容器的3/12 */
}
缺點和第乙個的float一樣,需要根據列數來跳出寬度調整。
如果需要相容ie6-ie7的,如果列數固定可以使用第一種和第二種。如果列數不固定,可以加少量js支援。
如果是只考慮移動的,考慮第三種,相容性比下面的flex支援的比較好。
如果單純的不考慮低版本瀏覽器的,可以考慮使用第四種。
css布局方法
我熟知的三種三欄網頁寬度自適應布局方法 控制布局,通常使用float,absolute和flew。實現三欄布局,左右有固定寬度的,中間實現自適應。1,有固定寬度的,先設定固定的寬度值,然後可使用float left和float right,實現左右布局 中間可用margin給出左右的位置即可,本身的...
H5頁面如何進行等分布局?
眾所周知,flex布局可以使得一行元素等分排布,但是有時候我們的需求並不是每一行的元素都是等分排布,比如應該設定成下面都樣式 1 彈性布局flex此時不再適用,因為彈性布局是會使得每一行都是根據div的個數n進行將每乙個div都均分1 n的寬度。2 使用div布局,且必須設定成行內塊 inlne b...
css居中布局方法
margin 0 auto 也就是將margin left和margin right屬性設定為auto,從而達到水平居中的效果。text align center center 利用padding和background clip配合實現div的水平垂直居中 parent children 通過bac...