CSS 代码如何在一个div内让文字垂直居中

2024-11-30 23:06:36
推荐回答(4个)
回答(1):





水平+垂直居中






测试垂直居中,即便是多行,我也还是垂直居中对齐的。

问题分析:


1.CSS中vertical-align这个属性只是对行级元素生效,div是块级元素,所以即使设置了此属性也不会生效。


2.Div可以通过display属性中的table-cell值由块级元素变为行级元素(这里你可以理解为Excel里的单元格),这样就支持vertical-align的垂直居中了。


3.扩张一点:如果是行级元素(例如span),也可以通过把height和line-height设置为相同值,这样也可以实现垂直居中,不过不符合你的要求,你了解即可。





下边是运行出来的效果:
问题分析:
1.
CSS中vertical-align这个属性只是对行级元素生效,div是块级元素,所以即使设置了此属性也不会生效。
2.
Div可以通过display属性中的table-cell值由块级元素变为行级元素(这里你可以理解为Excel里的单元格),这样就支持vertical-align的垂直居中了。
3.
扩展一点:如果是行级元素(例如span),也可以通过把height和line-height设置为相同值,这样也可以实现垂直居中,不过不符合你的要求,你了解即可。
另外哥推荐你用sublime写前端代码,灰常不错的一款编辑器,骚年,哥能帮你的就这么多了,剩下自己努力吧。

回答(2):

让div的height设置为auto,或者不设置高度(高度默认值为auto),然后设置div的上下padding值相等。
比如:
div
{
padding:20px;/*或者padding-top:20px;padding-bottom:20px;*/
height:auto;
}

回答(3):

由于div
是块级元素,在css中并没有可以使块级元素内的元素垂直居中的属性。所以只能使用其他的方法。
1.
设置文字的padding,使其达到居中的效果。、
2.
在文字外层,div内包裹一个

标签,

只是一段文字

并将p标签的大小设置的与div标签同样大小。再对p标签应用vertical-align
:middle属性。
具体如下:
3.
p{
width:100%;
height:100%;
vertical-align:middle;}/*注意当p标签的height为百分比写法时,div标签的height不要使用百分比的写法*/

回答(4):

.div{
/*
文字垂直居中
给包含它的父元素一个高度/宽度
然后padding:50%
0;
*/
/*
文字水平居中
text-align:center;
*/
}