<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>清除浮动</title>
<style>
/*
1.直接给父元素添加高度
扩展性不好
2.父元素添加overflow: hidden;
ie6 7 底下不支持BFC
3.父元素添加浮动,float: left
ie6 7 底下不支持BFC
4.通过添加br标签 <br clear='all' />
ie6 不支持
违反了结构 行为 样式 相分离的原则
5.通过空标签clear: both 清楚浮动<div style='clear: both;'></div>
违反了结构 行为 样式 相分离的原则
ie6 下元素的最小高度为19px(设置高度1-19px 都是19px)
可以尝试给元素的fontsize设置0到2px
6.伪元素清除浮动
父元素中添加样式和伪元素样式
*zoom: 1;
:after{
content: '';
display: block;
clear: both;
}
如果要考虑ie6 ie7 最好的方法是伪元素 + 开启haslayout
不考虑的话伪元素就是最好的方法
因为ie6 7 不支持伪元素,所以要额外的去开启 haslayout
*/
* {
margin: 0;
padding: 0;
}
#wrap {
border: 2px solid #ddd;
/*1.直接给父元素添加高度,有点low*/
/*height: 300px;*/
/*2.父元素添加overflow: hidden;*/
/*overflow: hidden;*/
/*3.通过开启BFC,父元素添加float: left*/
/*float: left;*/
}
#inner {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}
/*6.伪元素清除浮动*/
.clearFloat {
*zoom: 1;
}
.clearFloat:after {
content: '';
display: block;
clear: both;
}
</style>
</head>
<body>
<div id='wrap' class='clearFloat'>
<div id='inner'>
</div>
<!--4.通过添加br标签 <br clear='all' />-->
<!--<br clear='all'>-->
<!--5.通过clear: both 清楚浮动-->
<!--<div style='clear: both;'></div>-->
</div>
</body>
</html>