CSS 經典三列布局之雙飛翼布局

雙飛翼布局

雙飛翼布局與圣杯布局細微區別

  • 雙飛翼布局比圣杯布局多了一個 main-inner標簽
  • 雙飛翼布局不需要盒子定位
  • 雙飛翼布局是由內容main-inner盒子的maigin撐開

HTML結構

<div class="container clearfix">
        <div class="main">
            <div class="main-inner">main</div>  //相比較圣杯布局對出來的內容盒子
        </div>
        <div class="left">left</div>
        <div class="right">right</div>
</div>
1.png
  • 同圣杯布局類似先給main寬度100%
  • 三個盒子左浮動
  • left盒子margin-left:-100%; right盒子margin-left:-200px(right盒子自身的寬度)
  • 給內容盒子一個margin-left
 .container > div {
            float: left;
            height: 10vh;
        }
       .main {
            width: 100%;
            background-color: #DB5ACF;
        }
         .main-inner {
            margin-left:200px;
        }
                .left {
            width: 200px;
            background-color: #9FE444;
            margin-left: -100%;
        }

![Uploading 1_983217.png . . .]

  • 同理給right盒子
 .right {
            width: 200px;
            background-color: #39A3CF;
            margin-left: -200px;  /* 不能用100% */
        }
2.png

附件

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <title>雙飛翼布局</title>
    <style type="text/css">
        header,footer {
            height: 10vh;
            width: 100%;
            background-color: #ccc;
        }
        .clearfix:after {
            display:table;
            height: 0;
            content:"";
            clear: both;
        }
        .container > div {
            float: left;
            height: 10vh;
        }
        .main {
            width: 100%;
            background-color: #DB5ACF;
        }
        .main-inner {
            margin-left:200px;
            margin-right: 200px;
        }
        .left {
            width: 200px;
            background-color: #9FE444;
            margin-left: -100%;
        }
        .right {
            width: 200px;
            background-color: #39A3CF;
            margin-left: -200px;  /* 不能用100% */
        }
    </style>
</head>
<body>
<header>header</header>
<div class="container clearfix">
        <div class="main">
            <div class="main-inner">main</div>
        </div>
        <div class="left">left</div>
        <div class="right">right</div>
</div>
<footer>footer</footer>
</body>
</html>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容