css布局 ---圣杯布局 & 双飞翼布局

圣杯布局和双飞翼布局的目的都是实现左右宽度固定,中间自适应

【圣杯布局】

在这里插入图片描述
html代码中 middle部分首先要放在container的最前部分。然后是left,right

  • 将三者都 float:left , 再加上一个position:relative (因为相对定位后面会用到)

  • middle部分 width:100%占满

  • 此时middle占满了,所以要把left拉到最左边,使用margin-left:-100%

  • 这时left拉回来了,但会覆盖middle内容的左端,要把middle内容拉出来,所以在外围container加上 padding:0 220px 0 200px

  • middle内容拉回来了,但left也跟着过来了,所以要还原,就对left使用相对定位 left:-200px 同理,right也要相对定位还原 right:-220px

  • 到这里大概就自适应好了。如果想container高度保持一致可以给left middle right都加上min-height:130px

    代码如下:

  <style>
  * {
      margin: 0;
      padding: 0;
  }
  .middle,
  .left,
  .right {
      position: relative;
      float: left;
      min-height: 130px;
  }
  .container {
      padding: 0 220px 0 200px;
      overflow: hidden;
  }
  .left {
      margin-left: -100%;
      left: -200px;
      width: 200px;
      background: red;
  }
  .right {
      margin-left: -220px;
      right: -220px;
      width: 220px;
      background: green;
  }
  .middle {
      width: 100%;
      background: blue;
      word-break: break-all;
  }
</style>

<div class='container'>
  <div class='middle'></div>
  <div class='left'></div>
  <div class='right'></div>
</div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值