强制嵌套div的最小高度为100%?

时间:2012-08-11 18:23:30

标签: css layout position height

我知道如果父元素有一些高度的数值,min-height: 100%只会占用其父元素高度的至少100%,但是如果我有几个嵌套的div并且我想要怎么办?他们都有100%的最小高度?我试过了min-height:inherit,但这也没用?我知道我可以用JavaScript解决这个问题,只需检查文档加载时的浏览器高度值,然后将其分配给我的嵌套div的min-height属性,但我想知道是否可以解决这个问题。只是用css?

编辑:我还应该提一下,我需要我最外层的div和我的嵌套div都有一个100%的最小高度,这样它们至少占据了浏览器的高度,但如果需要可以扩展。

2 个答案:

答案 0 :(得分:20)

min-height: inherit;应该有效:http://jsfiddle.net/ugxbs/

修改

对于百分比值和预期行为,嵌套 min-height背后没有逻辑。你应该做的是为所有父母使用height属性,然后将min-height添加到最内层DIV

F.ex:

<html>
    <body>
        <div class="outer">
            <div class="inner"></div>
        </div>
    </body>
</html>

CSS:

html, body, .outer { height: 100% }
.inner { min-height: 100%; }

http://jsfiddle.net/4PsdT/

这样,您告诉浏览器将所有外部元素从顶部(HTML)设置为100%的高度。这将使这些元素在浏览器高度上延伸。然后只需将min-height添加到包含内容的最内层元素。

设置height并不意味着除非您添加overflow:hidden;,否则孩子的内容过多会失败。

答案 1 :(得分:0)

我可以使用属性高度但不是min-height。

http://jsfiddle.net/zDVqm/