css – 使DIV垂直填充剩余的页面?

前端之家收集整理的这篇文章主要介绍了css – 使DIV垂直填充剩余的页面?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个Google地图应用占据了大部分页面。但是,我需要为菜单栏保留最顶部的空间。如何使地图div自动填充其垂直空间? height:100%不工作,因为顶部栏会将地图推过页面底部
+--------------------------------+
|      top bar  (n units tall)   |
|================================|
|              ^                 |
|              |                 |
|             div                |
|     (100%-n units tall)        |
|              |                 |
|              v                 |
+--------------------------------+

解决方法

您可以使用绝对定位。

HTML

<div id="content">
    <div id="header">
        Header
    </div>
    This is where the content starts.
</div>

CSS

BODY
{
    margin: 0;
    padding: 0;
}
#content
{
    border: 3px solid #971111;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #DDD;
    padding-top: 85px;
}
#header
{
    border: 2px solid #279895;
    background-color: #FFF;
    height: 75px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

通过绝对定位#content并指定top,right,bottom和left属性,你会得到一个div来占据整个视口。

然后,您在#content上设置padding-top为> = #header的高度。

最后,将#header放在#content内,并绝对定位(指定顶部,左侧,右侧和高度)。

我不知道如何浏览器友好这是。查看this article at A List Apart了解更多信息。

猜你在找的CSS相关文章