css 清除浮动

css3中,关于 “浮动” 和 “清除浮动” 的那些事!

在css3中,当我们布局一个元素使它浮动的时候,我们常常会用到float(浮动)属性,使其元素左浮动、右浮动或者两端浮动,等。但是当我们定义了浮动属性之后,如果我们想要清除浮动,那该怎么办呢?


一、浮动的特性

脱离文档流,会根据父容器进行向左或者向右排列,如果之前有浮动的元素,就会挨着浮动的元素进行排列。

①浮动的逼格

  1. 只会影响浮动后面的元素
  2. 换行排列
  3. 内容会提升半层级别
  4. 默认宽根据内容而定
  5. 浮动后,块级元素看不到,行级元素能看到。

当我们定义三个div 块的时候,因为它是块级元素,每个元素会独占一行空间,定义完以后是纵向排列的元素。

浮动前:
在这里插入图片描述

浮动后:
在这里插入图片描述

该元素就会在原文档流中解除,不占用文档流空间,浮在文档流最上方。


②浮动的属性

float 默认为不浮动,属性值:none
在这里插入图片描述


二、清除浮动

①清除浮动的概念

    有时候当我们设置了浮动以后,会影响到下面不理想的一些样式布局,但是如果我们既想浮动元素而且还不影响下面的布局,我们就会用到清除浮动,来实现这种情况。


②清除浮动的方式及属性

清除浮动的办法有clear、overflow、after伪元素清除浮动等等几种方式。

  1. 使用clear属性清除浮动属性如下:
    在这里插入图片描述

  2. 使用overflow属性清除浮动属性如下
    在这里插入图片描述

  3. 使用after伪元素清除浮动

目前比较常用伪元素来清除浮动

 .clear::after{
            content: "";
            display: block;
            clear: both;
            visibility: hidden;
       }

清除浮动前后的效果对比如图:
当清除浮动后,子元素会脱离文档流,导致了父元素的高度塌陷问题!
解决这种办法就是给元素清除浮动。在这里插入图片描述
清除浮动后
在这里插入图片描述


小白水平,如有解释不全,多多讨论指正.
谢谢!

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值