如何使页面的下半部分占据剩余高度?

时间:2013-10-24 21:37:30

标签: css css3

我搜索并试了很多不同的东西。我有一个可变高度的上半身,下半部分应该填满剩下的空间。一个JSfiddle:

http://jsfiddle.net/UCJmQ/

CSS:

.top {
    background-color: lightblue;
    height: 300px;
}
.bottom {
    background-color: green;
    min-height: 100px;
    overflow: hidden;
    height: 100%;
}

html, body {
    height: 100%;
}

HTML:

<div class="top"></div>
<div class="bottom">

</div>

我现在看到的是绿页占据了整个窗户的高度,而不是剩余的高度。如何让它取代剩余的高度呢?

2 个答案:

答案 0 :(得分:3)

http://jsfiddle.net/ph35V/

<div class="wrapper">
    <div class="top">
        300px
    </div>
    <div class="bottom">
        Remaining height
    </div>
</div>

html, body {
    height: 100%;
    width: 100%;
    margin: 0;
}
.wrapper {
    display: table;
    height: 100%;
    width: 100%;
}
.top {
    display: table-row;
    background: lightblue;
    height: 300px;
}
.bottom {
    display: table-row;
    height: 100%;
    background: green;
}

还可以使用box-sizing: border-boxconflicting absolute positions

答案 1 :(得分:0)

是否在CSS中指定变量高度

从小提琴我认为是。如果是这种情况,请尝试将position: absolute left, bottom, right设置为0,将top设置为高于div高度的{{1}}:

DEMO