再次关于 css 布局:
#container{
width:979px;
height:590px;
margin-left:auto; //works
margin-right:auto; //works
margin-top:auto; //doesn't work
margin-bottom:auto; //doesn't work
}
所以,我希望#container 放置在屏幕中央。
我也试过:margin:auto - 没有结果。
最好的方法是使用display: table-cell
and vertical-align: middle
(在 IE7 上不起作用)。
因为我们没有你的 HTML,我能做的最好的就是链接你这篇文章,它向你展示了实现它的所有不同方法。
或者也许你可以使用这个解决方案:
<div class="container">
<div class="block">
<p>Hello world, i'm a vertical align div !</p>
</div>
</div>
div.bloc {
display:inline-block;
vertical-align:middle;
}
如果你想用 css 来做,你应该通过填充手动设置它。否则,如果您希望它是动态的,您应该编写如下的javascript:-
var a = window.outerHeight;
var b = $('#id of div').height();
var c = (a-b)/2;
$('#id of div').css("margin-top",c);
怎么样的东西:
#container{
width:979px;
height:590px;
position:absolute;
left:50%;
top:50%;
margin:-295px 0 0 -490px;
}
你有没有试过margin-top:50%;
,你可能会成功。
如果您知道#container 的高度和宽度,您可以执行以下操作:
我认为您正在寻找垂直居中,有一个关于如何做到这一点的博客。希望有帮助。
如果您只想将容器放置在屏幕中央。试试这个
CSS:
html, body { margin:0; padding:0; }
#container{
width:979px;
height:590px;
margin:0 auto;
}
HTML
<div id="container">
Data goes here
</div>
希望这可以帮助