如何在流体相对父元素内使绝对定位的文本居中?我试图在父元素上使用
text-align:center
,但它总是将子元素的左上角居中,而不是元素本身。
http://jsfiddle.net/sucTG/2/text-align:center
,但它总是将子元素的左上角居中,而不是元素本身。
http://jsfiddle.net/sucTG/2/position:absolute;
会修改元素的宽度以适应其内容,并且text-align: center;
将文本居中显示在元素块的宽度内。因此,如果添加position: absolute;
,请不要忘记增加元素的宽度,否则text-align: center;
属性将无效。width: 100%;
和left: 0px;
。
http://jsfiddle.net/27van/<div class="container">
<div class="text">Your text</div>
</div>
CSS:
.container {
position: relative;
width: 400px; /** optional **/
height: 400px; /** optional **/
background-color: red; /** optional **/
}
.text {
position: absolute;
top: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center; /** Y-axis align **/
justify-content: center; /** X-axis align **/
}
这应该更接近你想要的效果了?
你的文本是相对定位的,而容器内的其他元素是绝对定位的!
.text {
color:#fff;
padding:50px 0;
display:block;
position:relative;
}
.absolute {
background:#f0f;
height:25px; width:25px;
position:absolute;
top:36px; left:50%;
}
position:absolute;
?我刚试着把这行代码删除了,文本仍然正确居中。 - jeanpaul62