CSS清除浮动

136 阅读1分钟
1、给浮动元素的父级设置高度height(不推荐使用) 
  缺点:很多情况下 高度都是不确定的 所以不适用 
  
2、以浮制浮,给浮动元素的父元素设置浮动,原理是开启BFC(不推荐使用) 
  缺点:只有在父级需要浮动的时候,可以这么清除,否则父级的浮动会影响布局
  
3`overflow:hidden;`给父级设置,原理也是开启BFC(可以使用)
  优点:简单快捷 
  缺点:元素超出的时候,会隐藏超出部分 
  
4、clear清浮动法:给浮动元素的下边添加一个块元素,书写样式clear:both 
  缺点:增加额外的结构,不符合语义化标准 
  
5、after伪元素清浮动(推荐) 
可以给所有浮动元素的父级一个 clearFix的类名 
当一个元素需要清除浮动的时候 直接设置clearFix类名即可 
`
    .clearFix:after{
     content:"";    必须拥有content属性 内容为空 
    display: block;  必须块标签才能清浮动 
    height: 0;     高度为0 不占用空间 
    clear: both;    清除浮动
    }
`
.clearFix{ 
    //兼容ie *zoom:1;   //*是css hack 只有ie6.7 认识 
    //ie6、7 不支持伪元素,所以需要开启元素的haslayout来清除浮动 
}