这是我的网页HTML:
<body>
<header></header>
<div class="conteudo_representantes"></div>
<div class="rodape"></div>
</body>
我在.conteudo_representantes
div 中的内容超越了.rodape
(页脚) div 。
这是我的页面的CSS:
.conteudo_representantes {
margin-left: auto;
margin-right: auto;
width: 960px;
min-height:586px;
margin-top:40px;
position: relative;
}
.rodape {
position: relative;
width:960px;
height:50px;
margin:36px auto;
background:transparent url(../img/header_pattern.png) repeat top left;
}
可在此example中找到整页来源。 (点击列表的第二行,其中显示: 02 - 圣保罗 - 资本,以查看此问题的实际效果。)
我做错了什么?
答案 0 :(得分:12)
问题是你的div conteudo_representantes 没有正确地包装它的所有内容,因此就其关注而言,页脚处于正确的相对位置且代表 div由于某种原因而溢出
编辑:
实际上,这与您管理float
属性的方式有关。
您的div 代表向左浮动,但页脚没有。您可以通过从个代表 div关闭float:left
来测试此功能。
这是div重叠的常见原因。
在布置HTML页面时,请考虑每个div元素如何堆叠到下一个。 float
元素最终将决定divs堆栈的方式
快速guide正确堆叠元素
答案 1 :(得分:0)
如果我没错,那是因为您为min-height
指定了#container
。如果内容超过该高度,这允许它增长。而且因为它是min-height
,所以当内容变大时,它不会推倒页脚。
更新:问题应该通过向clear:both
添加#footer
属性来解决。