【发布时间】:2012-05-14 04:48:26
【问题描述】:
<div style="width: 800px; height: 600px">
<div style="height: 100px">
top fixed-height row
</div>
<div style="???">
bottom stretching row (the height should be 500px in this case.)
</div>
</div>
在没有 javascript 的情况下创建两行布局的标准方法是什么,其中顶部是固定大小,底部是拉伸并适合其父 div?
我希望两行的样式是独立的。我在这里找到了几个解决方案,但是如果我更改顶行的高度,则需要随之更改底行的样式(例如边距)。
我不需要支持旧浏览器。如果是标准的就好了。
谢谢!
【问题讨论】:
-
如果您没有为 div 指定高度,那么它会自动适应内容,而不是容器。但是如果你知道顶行是 100 并且包含的 div 是 600,为什么不简单地将底行设置为 height: 500?
-
我可能会经常修改高度,所以我不想计算两次高度。实际上我认为依赖关系不好..不过感谢您的评论。
-
为什么要设置第二行的高度——让它扩展到内容的大小还不够吗?如果与外观样式有关,请参阅下面的答案
-
感谢您的评论。我希望底部 div 自动填充父 div 的其余部分。我认为这是一个很常见的布局,但我发现的解决方案需要在某处明确指定剩余的 500px。
-
您需要编辑您的问题以指定您的全部要求,即底部 div 必须是固定大小并且需要滚动。下面提供的所有答案都没有考虑到这一点,因为我们不知道这就是您想要的。
标签: css html height stretching