在不知道div宽度的情况下,div的水平居中可能吗?

时间:2012-05-06 13:48:38

标签: javascript jquery css

我目前正在使用css / jquery构建一个弹出框脚本,在所有情况下我似乎无法将div置于屏幕中心。它可以在不知道div宽度的情况下居中吗?

我没有在此发布所有代码,而是在http://goo.gl/N45cp

上设置了一个实例

非常感谢任何形式的帮助!

最诚挚的问候 约翰

2 个答案:

答案 0 :(得分:7)

<div id="wrapper">
    <div id="child"></div>
</div>

如果#child的位置不是absolute,您可以将左右边距设置为auto

#child {
   margin: 0 auto;
}

如果位置为absolute,您可以尝试以下操作:

$("#child").css("left", function(){
    return ($("#wrapper").width() - $(this).width()) / 2;
});

答案 1 :(得分:4)

如果你有一个包含div的话,你可以用纯CSS来实现这个目的:

HTML

​<div id="outer">
    <div id="inner">some content here</div>
</div>

CSS

​body, html, div#outer { height:100%; }
div#outer { text-align:center; }
div#inner { display:inline-block; }

http://jsfiddle.net/NjZbW/

相关问题