【发布时间】:2015-09-15 00:21:13
【问题描述】:
我有一个布局,其顶部可以增加高度,下面的内容部分包含图表。基本的 HTML 结构可以表征为:
<div class="wrapper">
<div class="top">
<span class="box">Box 0</span>
<span class="box new">
<button>+</button>
</span>
</div>
<div id="chart">
Chart
</div>
</div>
每个box 元素都是固定的宽度和高度,并且是一种流畅的设计,因此当盒子不能放在同一条线上时,它们会环绕到下一个,从而使它们的容器 (top) 增长。
这是现阶段的交互式演示:http://jsfiddle.net/d1d6bwbc/,您可以在其中看到wrapper 是 100% 的宽度和高度(红色边框)。 top 有一个洋红色边框,并随着盒子需要换行而增长,chart 有一个蓝色边框。
我正在尝试使 chart 元素填充 wrapper 中剩余高度的 100%。
到目前为止,这是我的 css
body{margin:0}
.wrapper{
position:absolute;
border:1px solid red;
height:calc(100% - 2px); /* account for border in this example */
width:calc(100% - 2px); /* account for border in this example */
}
.top{
border: 1px solid magenta;
padding-bottom:5px
}
#chart{
border: 1px solid blue;
/* style chart to fill 100% of wrapper
}
我尝试了许多 css hack 和技巧,例如在 this question 和 this one too 中发现的那些,但它们似乎不适用于我的布局。
我可以完全控制布局,所以如果我的标记需要一些工作,那很好,但我想要的是一种简单的方法来实现对 chart 元素的填充。
【问题讨论】: