当前位置:Gxlcms > html代码 > 圣杯布局与双飞翼布局-说中

圣杯布局与双飞翼布局-说中

时间:2021-07-01 10:21:17 帮助过:36人阅读

圣杯布局和双飞翼布局的目的都是:左右两栏固定宽度,中间部分自适应;

圣杯布局

圣杯布局HTML

我是主要
我是左边
我是右边

圣杯布局CSS:

* {
    margin: 0;
    padding: 0
}

.main {
    background-color: yellow;
    height: 100px;
    float: left;
    width: 100%;
}

.left {
    background-color: red;
    width: 200px;
    height: 100px;
    float: left; 
    margin-left: -100%; /*margin负边距*/
    position: relative; /*相对自身偏移*/
    left: -200px; 
}

.right {
    background-color: blue;
    width: 200px;
    height: 100px;
    float: left;
    margin-left: -200px; /*margin负边距*/
    position: relative;  /*相对自身偏移*/
    right: -200px;   
}

.wrap {
    padding: 0 200px;  /*父级设置padding*/
}

圣杯布局的优点

  使主要内容列先加载。
  允许任何列是最高的。
  没有额外的div。
  需要的hack很少。

双飞翼布局

双飞翼HTML



    
        
        
            双飞翼布局
        
        
    
    
        
我是主要
我是左边
我是右边

双飞翼CSS

.main-wrap {
    float: left;
    width: 100%;
}

.main {
    height: 100px;
    margin-left: 200px;  /*利用左、右外边距定位*/
    margin-right: 200px;
    background-color: yellow;
}

.left {
    background-color: red;
    width: 200px;
    height: 100px;
    float: left;
    margin-left: -100%;
}

.right {
    background-color: blue;
    width: 200px;
    height: 100px;
    float: left;
    margin-left: -200px;
}

圣杯布局和双飞翼的比较

1.两种布局都是把主要内容放在前面加载;

2.布局有相似之处,都使用了负外边距来布局;

3.不同:

圣杯布局是设置 父容器的padding值、相对定位来实现;

双飞翼布局是给main添加了一个div容器、设置main的左右外边距 来实现;

人气教程排行