css有几种常见布局?

摘要:css有几种常见布局?下面本篇文章就来给大家介绍5中常见布局方式。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

css有几种常见布局?下面本篇文章就来给大家介绍5中常见布局方式。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

已知布局元素的高度,写出三栏布局,要求左栏、右栏宽度各为300px,中间自适应。

一、浮动布局

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>浮动布局</title>
    <style type="text/css">
      .wrap1 div{
            min-height: 200px;
        }
        .wrap1 .left{
            float: left;
            width: 300px;
            background: red;
        }
        .wrap1 .right{
            float: right;
            width: 300px;
            background: blue;
        }
        .wrap1 .center{
            background: pink;
        }  

    </style>
</head>
<body>

    <div>
        <div></div>
        <div></div>
        <div>
            浮动布局
        </div>  
    </div>
    
</body>
</html>

浮动布局的兼容性比较好,但是浮动带来的影响比较多,页面宽度不够的时候会影响布局。

二、绝对定位布局

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>绝对定位布局</title>
    <style type="text/css">
      .wrap2 div{
            position: absolute;
            min-height: 200px;
        }
        .wrap2 .left{
            left: 0;
            width: 300px;
            background: red;
        }
        .wrap2 .right{
            right: 0;
            width: 300px;
            background: blue;
        }
        .wrap2 .center{
            left: 300px;
            right: 300px;
            background: pink;
        } 

    </style>
</head>
<body>

    <div>
        <div></div>
        <div>
            绝对定位布局
        </div>
        <div></div>
    </div>

</body>
</html>

绝对定位布局快捷,但是有效性比较差,因为脱离了文档流。

三、flex布局

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>flex布局</title>
    <style type="text/css">
      .wrap3{
            display: flex;
            min-height: 200px;
        }
        .wrap3 .left{            
            flex-basis: 300px;
            background: red;
        }
        .wrap3 .right{            
            flex-basis: 300px;
            background: blue;
        }
        .wrap3 .center{
            flex: 1;
            background: pink;
        }

    </style>
</head>
<body>

    <div>
        <div></div>
        <div>
            flex布局
        </div>
        <div></div>
    </div>

</body>
</html>

自适应好,高度能够自动撑开

四、table-cell表格布局

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>table-cell表格布局</title>
    <style type="text/css">
      .wrap4{
            display: table;
            width: 100%;
            height: 200px;
        }
        .wrap4>div{
            display: table-cell;
        }
        .wrap4 .left{           
            width: 300px;
            background: red;
        }
        .wrap4 .right{          
            width: 300px;
            background: blue;
        }
        .wrap4 .center{
            background: pink;
        }

    </style>
</head>
<body>

    <div>
        <div></div>
        <div>
            表格布局
        </div>
        <div></div>
    </div>

</body>
</html>

兼容性好,但是有时候不能固定高度,因为会被内容撑高。

五、网格布局

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>网格布局</title>
    <style type="text/css">
      .wrap5{
            display: grid;
            width: 100%;
            grid-template-rows: 200px;
            grid-template-columns: 300px auto 300px;
        }
        .wrap5 .left{   
            background: red;
        }
        .wrap5 .right{  
            background: blue;
        }
        .wrap5 .center{
            background: pink;
        }

    </style>
</head>
<body>

    <div>
        <div></div>
        <div>
            网格布局
        </div>
        <div></div>
    </div>

</body>
</html>

比较新的一种布局方式,兼容性没那么好。

本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_9164