描述css问题有点棘手,但我会尽我所能.
在我的导航栏下面,我有一个容器div.它设定为80%宽.
在容器div中,我有一个Box-wrapper div,它包含四个div,它们都是float:left;它们是这样的,因此它们可以根据用户浏览器大小一次下载一个.
盒子包装器下面是另一个Box-wrapper2 div,它包含四个不浮动的div.
它们出现在另一个之上.
问题是由于某种原因,Box-wrapper2 div正在向上移动并且在盒子包装器后面.我希望它位于顶部包装器下方.
我该怎么做呢?
这是我正在谈论的页面:
http://www.rattletree.com/index2.php
如果您使用firebug并将鼠标悬停在第一个“programDetail”div上,您可以看到它在上面的div下面.
谢谢你的帮助!
解决方法
有关解决问题的更多选项,请参阅此链接:
http://www.quirksmode.org/css/clearing.html
选项1.
我相信你可以设置你的容器divs溢出:隐藏;这将清除它们并将第二个容器向下撞击,这样就没有重叠了.
选项2.
你应该在你的花车下方设置一个div来清除它们.有几种方法可以做到这一点,但最简单的方法是在你的花车下方设置另一个div,css clear:both
旁注:请务必给清除div一个高度:0;行高:0;显示:块;确保它不会在容器底部添加任何时髦的空间
编辑:
由于这个问题最后被问及(并得到回答),实现预期效果的新方法已经改变.通常的做法是使用以下样式的容器div:
.container:before,.container:after { display: table; line-height: 0; content: ""; } .container:after { clear: both; }
流行框架使用此方法(例如 – Zurb Foundation& Twitter Bootstrap)