清除浮动方法梳理

当一个父容器中的子元素变为浮动后,父容器就会坍塌,下面的盒子也会就此补充上来

因此,为了解决这样的问题,就有了清除浮动的几种方案:

<!-- 清除浮动 -->
<div class="container">
    <div class="inner"></div>
</div>

<style>
    html, body {
        margin: 0;
        padding: 0;
    }

    .container {
        width: 100%;
        background-color: gold;
    }

    .inner {
        background-color: tomato;
        height: 30px;
        width: 40px;
        float: left;
    }
 </style>

此时,父容器已经坍塌:
在这里插入图片描述
变成
在这里插入图片描述
解决办法有以下几种:

(1)创建BFC

    .clearfix-1 {
        overflow: hidden;
    }
    .clearfix-2 {
        overflow: auto;
    }

缺点是超出盒子外的部分就被隐藏掉了,所以这个需要在合适的场景中使用

(2)使用clear:both
利用伪元素,作用在父容器上:

    .clearfix-3 {}
    .clearfix-3:after {
        content: "";
        display: block;
        clear: both;
    }

或者创建一个br、hr放在浮动元素后

<!-- 清除浮动 -->
<div class="container">
    <div class="inner"></div>
    <br class="clearfix-4">
</div>
<style>
    .clearfix-4 {
        clear: both;
    }
</style>

至于为什么clear:both有这个能力呢,todo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值