美文网首页
圣杯布局和双飞翼布局的理解和区别

圣杯布局和双飞翼布局的理解和区别

作者: 死敲代码的 | 来源:发表于2019-12-31 12:55 被阅读0次
    1.圣杯布局

    代码如下

    .content{
       /*空出left与right的宽度*/
        padding: 0 100px;
    }
    .middle{
        float: left;
        width: 100%;
        height: 100px;
        background: blue;
    }
    .left{
         /*摆到上一排*/
        float: left;
        height: 100px;
        width: 100px;
        margin-left: -100%;
        /*摆正位置*/
        position: relative;
        left: -100px;
        background: red;
    }
    .right{
        /*摆到上一排*/
        float: left;
        height: 100px;
        width: 100px;
        margin-left: -100px;
       /*摆正位置*/
        position: relative;
        right: -100px;
        background: red;
    }
    
    <div class="content">
        <div class="middle">middle</div>
        <div class="left">left</div>
        <div class="right">right</div>
    </div>
    
    2.双飞翼布局

    代码如下

    .middle{
        float: left;
        width: 100%;
        height: 100px;
        background: blue;
    }
    .inside{
        /*空出left与right的宽度*/
        margin: 0 100px;
        height: 100%;
    }
    .left{
        float: left;
        width: 100px;
        height: 100px;
        margin-left: -100%;
        background: red;
    }
    .right{
        float: left;
        width: 100px;
        height: 100px;
        margin-left: -100px;
        background: red;
    }
    
    <div class="content">
        <div class="middle">
            <div class="inside">middle</div>
        </div>
        <div class="left">left</div>
        <div class="right">right</div>
    </div>
    
    相同:

    1.同样都是通过float实现所有的模块在同一行展示
    2.middle都使用了width: 100%
    3.都使用了margin-left进行定位

    不同:
    1. 圣杯布局是在最外层的content上空出两边距离, 而双飞翼布局是在middle的子节点中空出两边距离

    2. 圣杯布局空出两边距离使用的是padding, 而双飞翼布局空出两边距离使用的margin

      • 改写代码可以发现, 无论是使用margin或padding效果都是一致的,对布局没有任何影响, 所以无论写margin或padding都是可以的
    3. 圣杯布局中的left和right定位时使用了position: relative, 而双飞翼没有

      • 因为margin-left: -100%; 取的是父节点的宽度,不包括外边距padding.所以圣杯布局中需要进行二次定位

    相关文章

      网友评论

          本文标题:圣杯布局和双飞翼布局的理解和区别

          本文链接:https://www.haomeiwen.com/subject/cfsboctx.html