2009-05-05 133 views
2

所以我知道所有关于vertical-align: middle;的问题以及人们用于CSS中垂直对齐元素的不同方法。但我还没有找到一种适合我所需要的工作。在CSS中垂直对齐?

基本上我的页面上只有一个<div>,我希望它位于页面的中心,水平和垂直。很显然,水平部分很容易,但是我会挂在垂直部分。我的问题是<div>的高度是未知的;内容发生变化,所以我无法为它指定高度。

任何人有任何提示给我?如果需要,我愿意使用JavaScript。谢谢!

+0

你不知道应该居中的元素的高度 - 但是你知道周围区域的高度吗? – 2009-05-05 05:23:27

回答

0

正如你说你不介意使用JS,这里是......(我一般从不退却到一个JS的解决方案,但如果你冷静下来,然后我也是)

如果你的CSS是

#element { 
    position: absolute; 
    top: 50%; 
} 

然后,你可以用我朋友的jQuery

$(document).ready(function() { 
    var height = $('#element').height(); 
    $('#element').css({marginTop: '-' + (height/2) + 'px'}) 

{); 

注意,这是未经测试,但应该是一个开始。希望高度/ 2将按预期工作,如果没有,请尝试使用parseInt();