两列布局之左边固定宽度,右边自适应(绝对定位实现方法)

我们经常看到这样的布局方式:左边的侧边栏宽度固定,右边的主要内容区域宽度自适应变化。现在提供一个css布局方式。

html代码:

<div class="row">
  <div class="side">
    <img src="side.png" alt="order">
    <p>In restaurants, pizza can be baked in an oven with stone bricks above the heat source, an electric deck oven, a conveyor belt oven or a wood- or coal-fired brick oven.</p>
    <button>Order</button>
  </div>
  <div class="main">
    <img src="pizza.png" alt="pizza">
    <h1>Pizza</h1>
    <p>Various types of ovens are used to cook them and many varieties exist.</p>
  </div>  
</div>

css代码:

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.row {
  position: relative;
  width: 100%;
  background: #000;
}

布局采用的思路是:左边side列采用绝对定位,脱离文档流,右边的main列宽度100%,会自然地顶上来。但是我们看到的场景是side列浮在main列的上方。这时候通过设置main列的padding-left = side列的宽度实现内容不相互遮挡。

.side {
  position: absolute;/*脱离文档流,让右侧能顶上来*/
  top: 0;
  left: 0;
  width: 300px;
  height: 500px;
  background: #C0392B;
}
.main {
  width: 100%;
  height: 500px;
  background: #E74C3C;
  padding-left: 300px;/*左侧的宽度*/
}

转载于:https://www.cnblogs.com/lssthinkingontheway/p/7775240.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值