所以我有以下结构CSS高度:填充可用空间。没有固定的高度
<div id="container">
<div id="head"></div>
<div id="body"></div>
<div id="foot"></div>
</div>
我只使用插图的IDS
所以这甚至不需要一个完整的页面。
我想我的容器指定一个固定的大小...或相对大小,无所谓。让参数为300px高度。也overflow: hidden
我想扩大头/脚以适应其内的内容,所以height: auto
就足够了。
我想要身体扩大以适应头部和脚之间的剩余空间。如果内容太大,请滚动(overflow: auto
)。
height: 100%
#body
不起作用,因为它然后获得300像父亲一样的高度,并将其本身和页脚的一部分推出父母。
头和脚position: absolute
不起作用,因为通过将它们从文档流中取出,某些内容#body
被隐藏。为了解决这个问题,我们可以使用padding-top/bottom,但是我们不能在#body
上设置padding-top: xxpx
/padding-bottom: xxpx
,因为我们不知道头/脚的必要高度,因此它们为什么是height: auto
。
编辑:
我尝试了容器/头/体/脚转换成表,其中#body
是height: 100%
。这很有效,但如果内容太大,#body
将不会滚动,而是整个表将展开以显示所有内容。这不是所需的行为,因为我需要#body
来滚动,而不是#content
或它的父母。
有什么建议吗?
你想设置身体的背景,以适应头部和脚之间? – galambalazs 2010-06-30 21:46:06
你可以通过将#container视为#body的背部,来“伪装”你想要完成的任何事情的外观。你也可以抛出一个额外的父元素,如果#容器不能嘲笑。取决于你在做什么,完全是。 – reisio 2010-06-30 22:41:10
@reisio:不能。问题是我想要脚在底部,头部在顶部,身体要填充空间。我不介意使用#container作为#body的背景,但问题在于制作头部/脚部位置和正文滚动。它的内容比背景颜色更多。 – 2010-07-02 14:39:16