在没有使用 css 的脚本的情况下,红色块必须填充黄色和绿色之间的整个空间。除容器外,块的高度未知
div {
border: solid 1px black;
}
#container {
width: 100%;
height: 150px;
position: absolute;
}
#d1 {
background-color: yellow;
}
#d2{
background-color: red;
}
#d3 {
width: 100%;
position: absolute;
bottom: 0;
background-color: green;
}
<div id="container">
<div id="d1">1</div>
<div id="d2">2</div>
<div id="d3">3</div>
</div>
使用 and 属性
display:flex,height:auto您可以强制中央块填充块中的所有空闲空间#container。此解决方案仅在
height明确设置第一个和第三个块的高度 ( ) 时才有效。并且该属性
position需要一个值relative(而不是absolute)。然后,当改变高度时,#container中央块将填充块之间的空闲空间,#d1并#d3