在我正在铺设的页面上,有一堆互相粘在一起的div。 HTML代码看起来是这样的:如何防止子div超出父div的高度溢出?
<div id="overlay">
<div id="main_section">
<div class="left">yadda yadda left sidebar</div>
<div class="middle">
<div id="header">yadda yadda header</div>
<div id="main_content"><img class="resize content" src="static/some_image.jpg" /></div>
</div>
<div class="right">yadda yadda right sidebar</div>
<div class="clear"></div>
</div>
</div>
主容器是重叠的,而且它使用固定的位置,就像这样:
#overlay {
position: fixed;
width: 100%; height: 90%;
top: 0px; left: 0px;
background-color: rgba(255,255,255,0.5);
}
(我用分层各级不透明的多背景,这就是为什么有main_section,overlay等)
现在,所有的孩子使用相对定位,这相当好。问题出现在#main_content中。 #main_section和.middle的高度均为100%,并且正如预期的那样,它们一直下降到#overlay的底部。现在,这里的#main_content:
#main_content {
position: relative;
height: 100%;
width: 70%;
overflow-y: auto;
text-align: right;
}
这不工作,我希望它,因为由于图像大小的东西一直延伸到页面的底部,而不是到#overlay的底部。我已经尝试过overflow-y:scroll和height:inherit,我试过max-height:100%,并且我把我的头发拉出来。 Stackoverflow是我心脏病发作前的最后希望!
你应该提供您的问题的工作示例... – Axel 2013-03-19 22:02:07
尝试在http://jsfiddle.net/嘲讽了这个问题,并链接到它。这会帮助我们看到你的问题。 – Ben 2013-03-19 23:25:33