zoukankan      html  css  js  c++  java
  • 网页布局——三列布局(左侧和右侧固定,中间自适应)

    一:flex弹性布局

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

    二:float和margin

    这里需要注意center盒子和right盒子的位置,因为如果还是按照上一种的方法的文档位置会出现下图的情况,这是因为未浮动的块级盒子会独占一行。

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

     三:绝对定位

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style>
            *{
                padding: 0px;
                margin: 0px;
            }
            .left,.center,.right{
                height: 200px;
            }
            .left {
                position: absolute;
                width: 200px;
                left: 0;
                top: 0;
                background-color: blue;
            }
            .center {
                margin: 0px 200px;
                background-color: red;
            }
            .right {
                position: absolute;
                width: 200px;
                right: 0;
                top: 0;
                background-color: pink;
            }
        </style>
    </head>
    <body>
    <div class="container">
        <div class="left"></div>
        <div class="center"></div>
        <div class="right"></div>
    </div>
    </body>
    </html>

    四:table布局

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style>
            *{
                margin: 0px;
                padding: 0px;
            }
            .container{
                display: table;
                width: 100%;
            }
            .left,.center,.right{
                height: 200px;
                display: table-cell;
            }
            .left{
                width: 200px;
                background-color: blue;
            }
            .center{
                background-color: red;
            }
            .right{
                width: 200px;
                background-color: pink;
            }
        </style>
    </head>
    <body>
    <div class="container">
        <div class="left"></div>
        <div class="center"></div>
        <div class="right"></div>
    </div>
    </body>
    </html>

     第五种:display:grid网格布局

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style>
            *{
                margin: 0px;
                padding: 0px;
            }
            .container{
                display: grid;
                width: 100%;
                grid-template-rows: 200px;  /*设置行高*/
                grid-template-columns: 200px auto 200px;  /*设置列数属性*/
            }
            .left{
                background-color: blue;
            }
            .center{
                background-color: red;
            }
            .right{
                background-color: pink;
            } 
        </style>
    </head>
    <body>
    <div class="container">
        <div class="left"></div>
        <div class="center"></div>
        <div class="right"></div>
    </div>
    </body>
    </html>

    第六种:圣杯布局

    ps:须将中间内容优先渲染。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style>
            *{
                margin: 0px;
                padding: 0px;
            }
            .container{
                padding-left: 200px;
                padding-right: 200px;
            }
            .left,.center,.right{
                height: 200px;
                position: relative;
                float: left;
            }
            .left,.right{
                width: 200px;
            }
            .left{
                background-color: blue;
                margin-left: -100%;
                left: -200px;
            }
            .center{
                width: 100%;
                background-color: red;
            }
            .right{
                background-color: pink;
                margin-left: -200px;
                right: -200px;
            }  
        </style>
    </head>
    <body>
    <div class="container">
        <div class="center"></div>
        <div class="left"></div>
        <div class="right"></div>
    </div>
    </body>
    </html>

    第七种:双飞翼布局

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style>
            *{
                margin: 0px;
                padding: 0px;
            }
            .left,.center,.right{
                height: 200px;
                float: left;
            }
            .left,.right{
                width: 200px;
            }
            .left{
                background-color: blue;
                margin-left: -100%;
            }
            .center{
                width: 100%;
            }
            .inner{
                height: 200px;
                background-color: red;
                margin:0 200px;
            }
            .right{
                background-color: pink;
                margin-left: -200px;
            } 
        </style>
    </head>
    <body>
    <div class="container">
        <div class="center">
            <div class="inner">
                middle
            </div>
        </div>
        <div class="left"></div>
        <div class="right"></div>
    </div>
    </body>
    </html>
  • 相关阅读:
    log4net Config Examples
    求解:Nhibernate Unknown entity class 的解决办法
    复制Oracle表的结构
    Linux下安装MySQL并为其创建新用户图解教程
    windows下使用ffmpeg进行视频转码,图片拉取的Java测试代码
    Linux下安装Nginx详细图解教程
    Linux下安装Memcached图解教程
    Linux下使用Yum安装ffmpeg
    图解Java中如何将Jar文件打包成exe文件
    Java中实现系统托盘功能(代码全贴,附加运行截图)
  • 原文地址:https://www.cnblogs.com/ruilin/p/11678519.html
Copyright © 2011-2022 走看看