如何实现上下两个div上面值固定下面铺满高度

一、问题

  • 如何实现上下两个div上面值固定下面铺满高度
  • 下层div内容滚动

二、方案

  • 通过flex布局实现
  • 父级div设置 display: flex;flex-direction: column;
  • 第一个子div 设置固定高度
  • 第二个子div 设置flex: 1;

三、代码实现,可以直接拷贝浏览器查看

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>如何实现上下两个div上面值固定下面铺满高度</title>
    <style type="text/css">
        * {
            margin: 0;
            padding: 0;
        }

        html,
        body {
            width: 100%;
            height: 100%;
        }

        .parent {
            width: 100%;
            height: 100%;
            /* 此处 display: flex  flex-direction: column 是关键*/
            display: flex;
            flex-direction: column;
        }

        .top {
            background-color: #0086B3;
            height: 100px;
        }

        .bottom {
            /* 此处 flex 是重点*/
            flex: 1;
            overflow: auto;
            background-color: #ff55ff;
        }

        .bottom .content {
            height: 1000px;
        }
    </style>
</head>
<body>
<div class="parent">
    <div class="top">
        这里是第一块 固定高度
    </div>
    <div class="bottom">
        <div class="content">我是内容</div>
    </div>
</div>
</body>
</html>


评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×