说明
通过使用 :after
伪元素清除浮动:
:after
伪元素是额外标签法的升级版,也是给父元素添加
语法:
/* 在父类上添加clearfix这个类,添加其它类也可以,只要对应上就行 */
/* 把这段话拷贝到样式表中就行 */
.clearfix:after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix {
/* IE6、7专有 */
*zoom: 1;
}
这种方法的优点:没有增加标签,结构更简单。
缺点:要照顾低版本的浏览器
示例
展示效果:
完整示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 在父类上添加clearfix这个类,添加其它类也可以,只要对应上就行 */
.clearfix:after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix {
/* IE6、7专有 */
*zoom: 1;
}
.box {
width: 800px;
border: 1px solid blue;
margin: 0 auto;
}
.one {
float: left;
width: 300px;
height: 200px;
background-color: purple;
}
.two {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}
.footer {
height: 200px;
background-color: green;
}
.clear {
clear: both;
}
</style>
</head>
<body>
<div class="box clearfix">
<div class="one">子盒子1</div>
<div class="two">子盒子2</div>
</div>
<div class="footer"></div>
</body>
</html>