超级实用的CSS布局方案之水平垂直居中

1)使用absolute+transform

(1)原理、用法
原理:将水平居中时的absolute+transform和垂直居中时的absolute+transform相结合。详见:水平居中的3)和垂直居中的2)。
见水平居中的3)和垂直居中的2)。

(2)代码实例
<div class="parent">
<div class="child>DEMO</div>
</div>

.parent {
position:relative;
}

.child {
position:absolute;
left:50%;
top:50%;
transform:tranplate(-50%,-50%);
}

(3)优缺点
优点:child元素不会对其他元素产生影响
缺点:兼容性存在一定问题

2)使用inline-block+text-align+table-cell+vertical-align

(1)原理、用法
原理:使用inline-block+text-align水平居中,再用table-cell+vertical-align垂直居中,将二者结合起来。详见:水平居中的1)和垂直居中的1)。
见水平居中的1)和垂直居中的1)。

(2)代码实例
<div class="parent">
<div class="child>DEMO</div>
</div>

.parent {
text-align:center;
display:table-cell;
vertical-align:middle;
}

.child {
display:inline-block;
}

(3)优缺点
优点:兼容性较好

3)使用flex+justify-content+align-items

(1)原理、用法
原理:通过设置CSS3布局利器flex中的justify-content和align-items,从而达到水平垂直居中。详见:水平居中的4)和垂直居中的3)。
见水平居中的4)和垂直居中的3)。

(2)代码实例
<div class="parent">
<div class="child>DEMO</div>
</div>

.parent {
display:flex;
justify-content:center;
align-items:center;
}

(3)优缺点
优点:只设置了parent
缺点:兼容性存在一定问题

如果小伙伴们想了解更多WEB前端知识,可以加蓝轨迹WEB开发交流qq群:143046757

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章