html - CSS 布局中的 "Whatever is Left"

标签 html css layout positioning

我在一个容器元素中有 4 个元素。容器元素的高度将设置为浏览器窗口的 100%。 4 个内部元素将相互垂直堆叠(正常)。前两个元素和最后一个元素应该有一个“自然”高度(即:足以适应它们的内容)。第 3 个元素应该扩展以填充容器中的可用空间,在其他 3 个元素吃完它们需要的所有空间之后。

所以,它看起来像这样:

CSS Stacked Elements

我无法为 Element-1、Element-2 或 Element-4 设置明确的高度,我也不知道容器的高度。我也不知道 Element-3 的自然高度;我计划使用 overflow-scroll 如果它变得比可用的更大。我在元素之间添加了间距以供说明,但实际元素之间也会有间距(边距/填充)。

如何使用 HTML/CSS 实现这一目标?如果必须做出妥协以获得体面的布局,我会考虑它们。如果该技术也水平应用(我有时需要),则加分。

最佳答案

首先,很棒的视觉效果。

其次.. javascript 解决方案是不可能的吗?

更新

这只是一个示例,但我更新了代码以安抚一些更挑剔的人。

http://jsfiddle.net/tsZAV/9/

关于html - CSS 布局中的 "Whatever is Left",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4879087/

相关文章:

html - 数据表中的页码列表对齐方式

javascript - 使用 JQuery 将具有 x 和 y 坐标的图标定位在另一个图像的顶部

javascript - Apache echarts 中拖动垂直标记线

android - 获取标准布局属性

asp.net - 来自 ashx handler 的 Html5 视频源

html - 实时预览/所见即所得对 Notepad++ 的支持?

javascript - 如何制作自动图像 slider 。?

CSS网格: Switch two specific columns order

css - 盒子模型额外像素宽度

html - float 在绝对定位的 div 内,放置在相对定位的元素内