CSS布局方案小結(jié)
居中布局
水平居中
1)使用inline-block+text-align
原理:先將子框由塊級(jí)元素改變?yōu)樾袃?nèi)塊元素,再通過(guò)設(shè)置行內(nèi)塊元素居中以達(dá)到水平居中。
用法:對(duì)子框設(shè)置display:inline-block,對(duì)父框設(shè)置text-align:center。
<div class="parent">
<div class="child">DEMO</div>
</div>
.child{
display: inline-block;
}
.parent{
text-align: center;
}
缺點(diǎn):child里的文字也會(huì)水平居中,可以在.child添加text-align:left;還原
2)使用absolute+transform
<div class="parent">
<div class="child">DEMO</div>
</div>
.child{
position: relative;
}
.parent{
position: absolute;
left: 50%;
transform: translateX(-50%);
}
3)使用flex+justify-content
原理:通過(guò)CSS3中的布局利器flex中的justify-content屬性來(lái)達(dá)到水平居中。
用法:先將父框設(shè)置為display:flex,再設(shè)置justify-content:center。
<div class="parent">
<div class="child">DEMO</div>
</div>
.parent{
display: flex;
justify-content: center;
}
缺點(diǎn):低版本瀏覽器(ie6 ie7 ie8)不支持
4)使用flex+margin
原理:通過(guò)CSS3中的布局利器flex將子框轉(zhuǎn)換為flex item,再設(shè)置子框居中以達(dá)到居中。
用法:先將父框設(shè)置為display:flex,再設(shè)置子框margin:0 auto。
<div class="parent">
<div class="child">DEMO</div>
</div>
.parent{
display: flex;
}
.child{
margin: 0 auto;
}
垂直居中
1)使用absolute+transform
用法:先將父框設(shè)置為position:relative,再設(shè)置子框position:absolute,top:50%,transform:translateY(-50%)。
.parent {
position:relative;
}
.child {
position:absolute;
top:50%;
transform:translateY(-50%);
}
2)使用flex+align-items
原理:通過(guò)設(shè)置CSS3中的布局利器flex中的屬性align-times,使子框垂直居中。
.parent {
position:flex;
align-items:center;
}
水平垂直居中
1)使用absolute+transform
.parent {
position:relative;
}
.child {
position:absolute;
left:50%;
top:50%;
transform:tranplate(-50%,-50%);
}
2)使用flex+justify-content+align-items
.parent {
display:flex;
justify-content:center;
align-items:center;
}
總結(jié)
以上所述是小編給大家介紹的CSS布局方案小結(jié),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章

詳解css布局實(shí)現(xiàn)左中右布局的5種方式
這篇文章主要介紹了詳解css布局實(shí)現(xiàn)左中右布局的5種方式的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-05CSS實(shí)現(xiàn)多行多列的布局的實(shí)例代碼
這篇文章主要介紹了CSS實(shí)現(xiàn)多行多列的布局的實(shí)例代碼,需要的朋友可以參考下2018-02-28
這篇文章主要介紹了css Flex布局的可伸縮性(Flexibility)的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-07
這篇文章主要介紹了淺談css網(wǎng)頁(yè)的幾種布局的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-08
這篇文章主要介紹了如何理解 CSS 布局和塊級(jí)格式上下文的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-14- 本篇文章主要介紹了css sticker-footer 布局,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-06
詳解使用CSS3的@media來(lái)編寫(xiě)響應(yīng)式的頁(yè)面
這篇文章主要介紹了詳解使用CSS3的@media來(lái)編寫(xiě)響應(yīng)式的頁(yè)面,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-01





