【发布时间】:2013-10-19 05:08:56
【问题描述】:
我知道这个问题以前一定被问过很多次,但我确实看过已经存在的答案,但似乎没有任何效果!我已经在元素上定义了宽度,尝试删除浮动:左(这似乎没有居中,它也破坏了我的布局..),尝试将其设置为显示:块,我在使用页脚清除浮动之前做过所有这一切,也尝试使用 text-align center 。但是,是的,似乎没有什么可以将其置于中心位置。
.container3col {
width: 1200px;
background: #FFFFFF;
margin: 0 auto;
display:block;
}
.leftbar {
width: 180px;
padding-bottom: 10px;
background:#00FF00;
float:left;
}
.content {
padding: 10px 0;
width: 840px;
background:#FF0000;
float:left;
}
.rightbar {
width: 180px;
padding: 10px 0;
background:#00F;
float:left;
}
我的 HTML 部分目前确实包含很多内容,因此将其全部发布可能有点混乱。基本上我创建了一个容器 DIV 并将左栏、内容和右栏 DIV 放入其中。我相当确定所有内容都符合其 DIV 的宽度限制。
可能会影响我的代码的一件事是我确实使用了脚本来更改 display:none; 中的内容。显示:阻止(以便用户可以单击链接并加载文章的其余部分)。
在此之前我做了一个两列布局,看起来效果很好;它居中很好,无需删除浮动或类似的东西。也使用了我在上面段落中提到的 display:none 来阻止事物。两列页面工作得很好。
谢谢。
编辑:这是它的一个小提琴。由于很多内容是不必要的(即文章只是充满了填充文本),我删除了一些内容。 http://jsfiddle.net/Snail489/W6C9v/6/
【问题讨论】:
-
显示相关的 HTML。我可以说一件事,
container3col只有在它所在的窗口大于 1200 像素时才会居中。那是问题发生的时候吗?无论如何,使用 JS 更改显示属性应该没有问题(除非 JS 中有拼写错误,但我们假设没有)。 -
@avrahamcool 发布了一个问题。我确实删除了一些不必要的元素,例如文章的填充文字。
-
@MrLister 窗口宽度超过 1200 像素,是的(它在 1366x780 或类似的分辨率下最大化 - 我不记得确切但我绝对确定它大于 1200)。当我创建类似的两列布局时,容器为 1200 像素,并且在最大化的窗口中完美居中。
-
您的 CSS(HTML 类型的注释)中有一个错误,导致无法应用
.container3col的样式。删除它。 -
@MrLister 没想到这些 cmets 实际上会影响布局,但看起来确实如此 - DIV 现在居中。非常感谢:D