使用/ jQuery将div放在屏幕中间

时间:2011-04-20 15:40:39

标签: jquery css

我需要在屏幕中间添加一个叠加框。我必须留在那里,直到我删除它。即使页面滚动,我也应该保持在中间位置。我的猜测我需要一个相对定位,但我如何获得边距等。我需要使用jQuery来计算它吗?

$(".myBox").css("margin-top", $(document).height()/2 - $(".myBox").height()/2);

2 个答案:

答案 0 :(得分:1)

如果您为div指定了宽度和高度,则可以使用(CSS代码):

 margin-left: auto;
 margin-top: auto;

或者如果你想在jQuery中执行此操作:

$(".myBox").css("margin-top", "auto");
$(".myBox").css("margin-left", "auto");

这应该得到IE以及Firefox,Opera,Safari等的支持。

答案 1 :(得分:0)

您要找的是position:fixed(IE< 7不支持)。 https://developer.mozilla.org/en/CSS/position满足此要求:“即使页面滚动,它也应保持在中间位置。”

$(".myBox").css("top", $(document).height()/2 - $(".myBox").height()/2);
$(".myBox").css("position", "fixed");