双飞翼布局

双飞翼布局的意义

第一可以实现三列布局左右固定宽度,中间宽度自适应,第二个,通常三列布局都是按照左(sub)中(main)右(extra)顺序来写的,这样页面也会根据这个DOM结构来顺序加载,而如果用双飞翼布局,可以使三列布局中mian先加载,subextra后加载。

双飞翼布局的实现

双翼

html:

<body>
    <div class="main"></div>
    <div class="sub"></div>
    <div class="extra"></div>
</body>
  1. 这里如果都设置左浮动,main就会出现在页面左边;
  2. 我们都知道,如果浮动布局一排里显示不下时,行框就会被挤到下一行;
  3. 那么如果边距为负,他会移动到页面以外,当值大于等于自身宽度时,他就会被移动到上一行。
  4. 这时就可以使用负边距来实现另外两列的布局

css:

.main{ float:left;width:100%;}
.sub{  float:left;width:190px;margin-left:-100%;}
.extra{float:left;width:230px;margin-left:-230px;}

效果如图:
_1

鸟身

  1. 此时subextra都定位到正常位置了,但是main的左侧和右侧被挡住了。
  2. 因为main,sub,extra都处在浮动层,而且main是固定宽度,如果给main设置margin或者padding值,会因为其固有的宽度而撑开飞翼布局,直接影响到sub,extra的位置;
  3. 所以给main设置一个内层,为内层设置margin值

html:

<div class="main">
    <div class="main-content">
    </div>
</div>
<div class="sub"></div>
<div class="extra"></div>

css:

.main-content{margin:0 230px 0 190px;}

效果图:
_0

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值