利用css设置元素垂直居中的解决方法汇总

2020-05-05 08:03:32易采站长站整理

 

css代码:


.parent {
position: relative;
width: 100%;
height: 100%;
}
.child {
width: 500px;
border: 1px solid #ccc;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
height: 30%;
margin: auto;
}

第三种方法(需要加padding):
 

css代码:


#parent {
padding: 5% 0;
}
#child {
padding: 10% 0;
}

第四种方法:
 

(使用display: table,此种方法也适用于行内文本元素的居中):
 

css代码:


.parent {
width: 100%;
height: 100%;
display: table;
}
.child {
display: table-cell;
vertical-align: middle;
}

第五种方法(flex布局,这里需要考虑兼容性奥!)
 

css 代码:


.parent {
width: 100%;
height: 100%; /*这里一定要写高度奥!*/
display: flex;
align-items: center;
justify-content: center;
}

(4) 已知高度的块级元素垂直居中
 

html代码:


<div class="parent">
<div class="child">
<!--.child的高度已知,父元素高度已知-->
sddvsds dfvsdvds
</div>
</div>

css代码:


#parent {
height: 300px;
}
#child {
height: 40px;
margin-top: 130px; /*这个只为父元素的高度减去这个元素的高度除以二计算得到的*/
border: 1px solid #ccc;
}

以上就是我目前发现并亲自测试可行的一些方法,应该还有其他的方法

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对软件开发网的支持。