CSS佈局(二) 聖盃佈局

什麼是聖盃佈局

聖盃佈局是來源於該佈局效果類似聖盃而得名。簡單來說,就是三行三列布局。

在這裏插入圖片描述

第一種解決方案(calc)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>聖盃佈局</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        .left,.right,.center{
            height: 300px;
            display: inline-block;
        }
        .left,.right{
            width: 300px;
        }

        .center{
            width: calc(100% - 600px);
        }

        .left{
            background-color: #c9394a;
        }

        .center{
            background-color: green;
        }

        .right{
            background-color: #ccc;
        }
    </style>
</head>
<body>
<header>我是頭部</header>
<div><div class="left"></div><div class="center"></div><div class="right"></div></div>
<footer>我是尾部</footer>
</body>
</html>

第二種解決方案(浮動)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>聖盃佈局</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        .left,.right,.center{
            height: 300px;
        }
        .left,.right{
            width: 300px;
        }

        .left{
            float: left;
        }
        .right{
            float: right;
        }
        .center{
            margin-left: 300px;
            margin-right: 300px;
        }
        .left{
            background-color: #c9394a;
        }

        .center{
            background-color: green;
        }

        .right{
            background-color: #ccc;
        }
    </style>
</head>
<body>
<header>我是頭部</header>
<div>
    <div class="left"></div>
    <div class="right"></div>
    <div class="center"></div>
    <div style="clear: both"></div>
</div>
<footer>我是尾部</footer>
</body>
</html>

第三種

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>聖盃佈局</title>
    <style>
        .left,.right,.center{
            height: 300px;
            float: left;
        }
        .left,.right{
            width: 300px;
        }

        .center{
            width: 100%;
        }

        .left{
            background-color: #c9394a;
            margin-left: -100%;
            left: -300px;
            position: relative;
        }

        .center{
            background-color: green;
        }

        .right{
            background-color: #ccc;
            margin-left: -300px;
            position: relative;
            left:300px;
        }

        .parent{
            margin-left: 300px;
            margin-right: 300px;
        }
    </style>
</head>
<body>
<header>我是頭部</header>
<div class="parent">
    <div class="center"></div>
    <div class="left"></div>
    <div class="right"></div>
    <div style="clear: both"></div>
</div>
<footer>我是尾部</footer>
</body>
</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章