【发布时间】:2011-09-23 07:58:13
【问题描述】:
我想将另一个 div 中的 div 居中。
<div id="outerDiv">
<div id="innerDiv">
</div>
</div>
这是我目前使用的 CSS。
#outerDiv {
width: 500px;
height: 500px;
position: relative;
}
#innerDiv {
width: 284px;
height: 290px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -147px;
margin-left: -144px;
}
如您所见,我现在使用的方法取决于#innerDiv 的宽度和高度。如果宽度/高度发生变化,我将不得不修改 margin-top 和 margin-left 值。是否有任何通用解决方案可用于将#innerDiv 居中而不考虑其大小?
我发现使用margin: auto 可以将#innerDiv 水平对齐到中间。但是垂直对齐呢?
【问题讨论】:
-
如果你做 margin-top: auto;边距底部:自动;
-
这里有两种简单的方法可以让 div 在 div 中居中,垂直居中,水平居中或两者兼而有之(纯 CSS):stackoverflow.com/a/31977476/3597276
-
别人给的建议是对的。只是补充。如果你有名为 DivParent 的父 div 和名为 ChildDiv 的子 div,那么只需将 margin: auto 添加到子 div,这将使 childDiv 或 innerDiv 在 ParentDiv 的中心。