【发布时间】:2014-07-28 07:59:53
【问题描述】:
我正在尝试将红色“倒计时”div 水平居中,但它不符合我的要求。已经卡了几个小时,但还没有找到单一的解决方案。
HTML:
<div id="container">
<div id="countdownWrapper">
<div id="countdown">
</div>
</div>
</div>
CSS:
body {
margin:0;
background:black;
overflow: hidden;}
#container {
height:100%;
width:100%;
z-index:-900;
position:fixed;
min-width:500px;}
#countdownWrapper {
width:100%;
height:100px;
bottom:0;
position:absolute;
display:block;}
#countdown {
margin-left:auto;
margin-right:auto;
display:block;
width:400px;
height:100px;
background-color: rgba(0, 0, 0, 0.5);
position:absolute;
z-index:1000;
-webkit-border-top-left-radius: 20px;
-webkit-border-top-right-radius: 20px;
-moz-border-radius-topleft: 20px;
-moz-border-radius-topright: 20px;
border-top-left-radius: 20px;
border-top-right-radius: 20px;
background:red;}
【问题讨论】:
-
边距不能很好地与绝对定位的元素配合使用。你这样定位它有什么原因吗?我没有看到任何右、左、上或下规则。
-
是的,直到我将#countdown 放入#countdownWrapper 之前,这是一个原因。只是忘了从 #countdown 中删除 position:absolute ,而是将该值分配给父级。问题还是解决了,感谢您的快速反馈!
-
@user3716760 只是一个说明,边距可以在绝对定位元素中计算,但是当你这样做时,边距将相对于绝对定位元素的 div left 和 top 属性。请检查我的答案。