zoukankan      html  css  js  c++  java
  • 网页布局——左侧固定,右侧自适应

    第一种方法:采用绝对定位+BFC(overflow:auto)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .left{
                width: 200px;
                height: 200px;
                background: red;
                position: absolute;
            }
            .right{
                height: 200px;
                margin-left: 200px;
                background: blue;
                overflow: auto;
            }
        </style>
    </head>
    <body>
        <div class="left">左边</div>
        <div class="right">右边</div>
    </body>
    </html>

    第二种方法:采用左浮动+BFC(overflow:auto)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .left{
                width: 200px;
                height: 200px;
                background: red;
                float: left;
            }
            .right{
                height: 200px;
                background: blue;
                overflow: auto;
            }
        </style>
    </head>
    <body>
        <div class="left">左边</div>
        <div class="right">右边</div>
    </body>
    </html>

    第三种方法:采用flex布局+BFC(overflow:auto)(推荐使用)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .main{
                display: flex;
            }
            .left{
                width: 200px;
                height: 200px;
                background: red;
            }
            .right{
                height: 200px;
                background: blue;
                flex: 1;
                overflow: auto;
            }
        </style>
    </head>
    <body>
        <div class="main">
            <div class="left">左边</div>
            <div class="right">右边</div>
        </div>
    </body>
    </html>

    第四种:table布局(高度会自动撑开)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .main {
                display: table;
                width: 100%;
            }
            .left ,.right {
                display:table-cell;
                height:240px; 
            }
            .right{
                background-color: blue;
            }
            .left {
                width: 300px;
                background-color: red;
            }
        </style>
    </head>
    <body>
        <div class="main">
          <div class="left" >左边</div>
          <div class="right" >右边</div>
        </div>
    </body>
    </html>

    第五种:grid网格布局+BFC(overflow:auto)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .main {
                display: grid;
                width: 100%;
                grid-template-rows: 200px;  /*设置行高*/
                grid-template-columns: 200px auto;  /*设置列数属性*/
            }
            .right{
                background-color: blue;
                overflow: auto;
            }
            .left {
                background-color: red;
            }
        </style>
    </head>
    <body>
        <div class="main">
          <div class="left" >左边</div>
          <div class="right" >右边</div>
        </div>
    </body>
    </html>

    如果不触发BFC,如果右边内容超出右边盒子的高度会出现内容往左边靠和溢出的情况

    第一种情况:浮动

    第二种情况:绝对定位,flex布局,grid网格布局

     
  • 相关阅读:
    2016/01/14开始学习git:标签管理:操作标签
    2016/01/14开始学习git:标签管理:创建标签
    2016/01/14开始学习git:分支管理:多人协作
    2016/01/14开始学习git:分支管理:Feature分支
    2016/01/13开始学习git:分支管理:Bug分支
    python-pygame的触碰方法
    python游戏pygame模块画圆及鼠标拖拽移动方法介绍
    python的EasyGui模块简单用法介绍
    python用递归函数解汉诺塔游戏
    python函数的几种参数类型
  • 原文地址:https://www.cnblogs.com/ruilin/p/10757066.html
Copyright © 2011-2022 走看看