关于清除浮动的五种方法

清除浮动的本质:为了解决父级元素印子级浮动引起内部高度为0的问题。

方式1:额外标签法(w3c推荐的方法): 在最后一个浮动标签后,新添加一个标签

优点:通俗易懂,书写方便。
缺点:不推荐使用,添加许多无意义的标签,结构化较差。

.clear{
   clear:both;
   width:0;
   height:0;
}

方式2:父级添加overflow属性方法

.father{
       overflow:hidden;
  }

优点:代码简捷。
缺点:内容增多时容易造成不会自动换行导致内容被隐藏掉,无法显示需要溢出的元素。

方法3:为父元素添加after伪元素清除浮动

.clearfix:after{

      content:"";//设置内容为空

      height:0;//高度为0

      display:block;//将文本转为块级元素

      visibility:hidden;//将元素隐藏

      clear:both//清除浮动

     }

.clearfix{

     *zoom:1;//zoom:1 就是IE6清除浮动的方式,* ie7以下的版本所识别

    }

优点:符合闭合浮动思想,结构语义化正确。
缺点:由于IE6-7不支持:after,使用zoom:1触发hasLayout。

方法4:为父元素添加before和after双伪元素清除浮动

 .clearfix:before,.clearfix:after {
	          content: ""; 
              display: table;
        }
  .clearfix:after {
              clear: both;
        }
 .clearfix {
              *zoom: 1;
        }

优点:代码更简洁
缺点:由于IE6-7不支持:after,使用zoom:1触发hasLayout。

方法5:为父元素设置具体的宽和高的值

 .father{
	       height:100px;//计算具体的值
	       width:100%;
	  }

优点:通俗易懂,书写方便。
缺点:不推荐使用,需要计算准确地值,且容易出现偏差。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值