我正在使用只保存文本的div。它使用绝对定位将自身置于使用相对定位的图像div的顶部。如果我使用
,我可以在CSS中水平居中 div {
text-align:center;
width:100%;
}
但是当我尝试使用
垂直居中时 div {
text-align:center;
height:100%;
}
它不垂直居中。我猜这是因为text-align:center只是水平指定..我怎么能绕过这个?我已经看到了一些解决方案,如果外部div是固定大小,但外部div不是固定大小。它是流动的,所以我需要它也能流畅地工作。我尝试过使用top:50%,但我希望它完全集中......我很缺乏经验,所以对我很轻松
答案 0 :(得分:0)
正如您所猜测的,您是对的,text-align: center;
用于仅水平对齐文本/元素而不是垂直对齐...所以如果您正在谈论垂直对齐单行文本而不是您需要使用{ {1}},它将等于容器line-height
height
如果您希望垂直对齐整个元素,那么您可以使用我不建议使用的div {
height: 100px;
width: 100px;
border: 1px solid #f00;
line-height: 100px;
text-align: center; /* Forgot this in the demo */
}
,而是使用嵌套在position: absolute;
父级内的display: table-cell;
display: table;
答案 1 :(得分:0)
答案 2 :(得分:-1)
试试这个。将代码设为
div { text-align:center; line-height:100%; }