我有三个组件,一个#parent
,其中有两个是#top
和#bottom
。
#parent
不是固定大小。
#top
有漂浮的孩子,没有固定的大小(孩子可以改变大小)。为了解决因浮动孩子而导致的身高,它使用了这个:
#top:after {
content: " ";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
我希望#bottom
占用父级的剩余高度,如果我像正常一样使用height:100%
,则会使其溢出与#top
的高度相同的大小。
我也看到人们使用overflow:none;
,但这会使#bottom
中的部分内容被切断。
如何让#bottom
占用#parent
中的剩余高度?
编辑: I made a jFiddle to show the problem。此外,我需要支持回到IE 7.我愿意使用Javascript / jQuery。
答案 0 :(得分:1)
如果你浮动顶部元素然后使用height: 100%;
这应解决问题:
#top{
background-color: blue;
width:100%;
float:left;
}
请参阅:http://jsfiddle.net/SKkAp/1/
现在这样做bottom
实际上填充了parent
,因为top
已浮动。但bottom
的内容被推出了浮动的top
,使其显得好像bottom
正在填充剩余的空间,它真正填满了整个parent
。希望你能理解这一点。哈哈