我找到了一种方法,使一个div容器占据至少一个页面的全部高度,通过设置最小高度:100%;。然而,当我添加一个嵌套的div并设置高度:100%;,它不会延伸到容器的高度。有办法解决吗?

Html, body { 高度:100%; 保证金:0; } #控制{ 最小高度:100%; 背景:粉色; } # containment-shadow-left { 高度:100%; 背景:水; } < div id = "容器" > < div id = " containment-shadow-left " > 你好世界! < / div > < / div >


当前回答

我想我会分享这个,因为我在任何地方都没有看到这个,这是我用来修复我的解决方案。

解决方案:min-height:继承;

我有一个父结点有一个指定的最小高度,我需要一个子结点也有这个高度。

.parent { 最小高度:300 px; background - color: rgba(255255年,0,0.5);/ /黄色 } .child { 最小高度:继承; background - color: rgba(0255年,0,0.5);/ /蓝色 } p { 填充:20 px; 颜色:红色; 字体类型:无衬线; 粗细:大胆的; text-align:中心; } < div class = "父" > < div class = "孩子" > <p>黄色+蓝色=绿色:)</p> < / div > < / div >

这样,子节点现在就相当于最小高度的100%。

我希望有些人会觉得这有用:)

其他回答

只是为了保持这个主题的完整,我发现了一个解决方案没有探索这里使用固定位置。

没有溢出

Html, body, .wrapper, .parent, .child { 位置:固定; 上图:0; 底部:0; 左:0; 右:0; 保证金:0; 填充:0; 高度:100%; } .child { 溢出:汽车; 背景:灰色; } .height-50 { 高度:50%; 宽度:5 em; Margin: 10px auto; 背景:青色; } < div class = "包装" > < div class = "父" > < div class = "孩子" > < div class = " height-50 " > < / div > < / div > < / div > < / div >

与溢出

Html, body, .wrapper, .parent, .child { 位置:固定; 上图:0; 底部:0; 左:0; 右:0; 保证金:0; 填充:0; 高度:100%; } .child { 溢出:汽车; 背景:灰色; } .height - 150 { 高度:150%; 宽度:5 em; Margin: 10px auto; 背景:青色; } < div class = "包装" > < div class = "父" > < div class = "孩子" > < div class = "身高- 150 " > < / div > < / div > < / div > < / div >

我想我会分享这个,因为我在任何地方都没有看到这个,这是我用来修复我的解决方案。

解决方案:min-height:继承;

我有一个父结点有一个指定的最小高度,我需要一个子结点也有这个高度。

.parent { 最小高度:300 px; background - color: rgba(255255年,0,0.5);/ /黄色 } .child { 最小高度:继承; background - color: rgba(0255年,0,0.5);/ /蓝色 } p { 填充:20 px; 颜色:红色; 字体类型:无衬线; 粗细:大胆的; text-align:中心; } < div class = "父" > < div class = "孩子" > <p>黄色+蓝色=绿色:)</p> < / div > < / div >

这样,子节点现在就相当于最小高度的100%。

我希望有些人会觉得这有用:)

添加这个到父组件为我修复了它:

display: flex;
flex-direction: column;

除了现有的答案,还有视口单元vh可以使用。下面是一个简单的代码片段。当然,它也可以与calc()一起使用,例如min-height: calc(100vh - 200px);当页眉和页脚的高度在一起是200px时。

身体{ 保证金:0; } .child { 最小高度:100 vh; 背景:粉色; } < div class = "父" > < div class = "孩子" > < / div > < / div >

已经有一段时间了,但是,如果其他人还在挣扎,我找到了我的变通办法。 我需要的父母有一个最小的高度,和孩子(这将包含几个图像/文件预览)必须占据整个父母,所以..

我简单地定义了一个最小的高度给孩子,让父母没有定义高度,所以它可以随着孩子的内容增长。

CSS

.parent{
    border: 1px solid black;
    border-radius: 5px;
}
.children{
  width: 100%;
  min-height: 100px;
}

HTML:

<div class="parent">
    <div class="children">
        some content inside
    </div>
</div>