Jquery 在页面宽度增大/缩小时保持div居中
我有一个浮动的左div,这样它可以包装内容。我想将这个div居中。不幸的是,由于我不知道这个div的确切宽度,我不能使用Jquery 在页面宽度增大/缩小时保持div居中,jquery,html,center,Jquery,Html,Center,我有一个浮动的左div,这样它可以包装内容。我想将这个div居中。不幸的是,由于我不知道这个div的确切宽度,我不能使用margin:0 auto。因此,我决定使用jQuery将div居中。通过使用.outerWidth(),我能够正确地做到这一点。问题是,我希望当页面增大/缩小时,div保持居中。我原以为将左边的边距设置为一个百分比就可以做到这一点,但事实并非如此。有办法做到这一点吗?您不需要精确的div宽度来居中。您可以看到它在这里工作jsfiddle.net/GkGBT CSS HTML
margin:0 auto代码>。因此,我决定使用jQuery将div居中。通过使用.outerWidth()
,我能够正确地做到这一点。问题是,我希望当页面增大/缩小时,div保持居中。我原以为将左边的边距设置为一个百分比就可以做到这一点,但事实并非如此。有办法做到这一点吗?您不需要精确的div宽度来居中。您可以看到它在这里工作jsfiddle.net/GkGBT
CSS
HTML
不需要div的精确宽度来居中。您可以看到它在这里工作jsfiddle.net/GkGBT
CSS
HTML
您可以在window.Resize上调用居中功能。这样,您可以创建一个函数来计算放置。只需使用链接线程中描述的初始打开和方式调用函数。发布一些您尝试过的代码和html标记。您可以调用window.resizewhat上的居中函数。这样,您可以创建一个函数来计算放置。只需使用链接线程中描述的初始开口和方式调用函数。发布一些您尝试过的代码和html标记。“很遗憾,由于我不知道此div的确切宽度,我无法使用margin:0 auto”;如果未设置宽度,则无法使用display:inline block。我遗漏了问题的一部分吗?将-1改为+1很好的hack:)不是.centerdiv
而是主体
文本对齐谁在这里做这项工作。不确定这是否适用于OP,但解决方案有效,因此删除了-1:)谢谢。它有一段时间对我不起作用,但那是因为float:left(我用来强制div包装内容)阻止了它的工作。我没有意识到display:inline块也会换行。“不幸的是,因为我不知道这个div的确切宽度,所以我不能使用margin:0 auto;”并且如果没有设置宽度,它将无法与display:inline块一起工作。我遗漏了问题的一部分吗?将-1改为+1很好的hack:)不是.centerdiv
而是主体
文本对齐谁在这里做这项工作。不确定这是否适用于OP,但解决方案有效,因此删除了-1:)谢谢。它有一段时间对我不起作用,但那是因为float:left(我用来强制div包装内容)阻止了它的工作。我没有意识到显示:内联块也会换行。
body{
text-align:center;
}
.centerdiv{
background:blue;
display:inline-block;
margin-left:auto;margin-right:auto;
text-align:left;
}
<div class="centerdiv"></div>