【发布时间】:2016-01-06 12:37:50
【问题描述】:
我有非常简单的标记和样式规则,应该将我的div 放在页面中间,但它没有(实际上,div 的顶部会在中间,而不是 100% 真正垂直居中)当视口的高度足够小时。
HTML:
<div>adf</div>
CSS:
div {
background-color:red;
margin-top:50%;
}
您可以查看我的Fiddle 来查看此内容。它需要你稍微缩小渲染的窗口(右下角),因为它最初是正确的。
【问题讨论】:
-
margin-top在使用百分比时使用元素的宽度。查看这个问题的答案:stackoverflow.com/questions/7266363/… -
参见the spec:百分比是根据生成框的包含块的宽度计算的。请注意,“margin-top”和“margin-bottom”也是如此。