如果有一個DIV作為外部容器,內部的DIV如果設置了float樣式,則外部的容器DIV因為內部沒有 clear,導致不能被撐開。
前端清除浮動都用clear: both;class="clearfix"是什么呢?class="clearfix"是用來清除偏移量和層之間控制位置用的,看下例子:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8"/>
<title>如何在html中使用clearfix和clear</title>
<link rel="stylesheet" type="text/css" href="/css/base.css" media="all"/>
<style type="text/css">
.fl{float:left;}
.demo{background:#ccc;}
.item1{background:#f90;height:100px;width:100px;}
.item2{background:#fc0;height:200px;width:100px;}
</style>
</head>
<body>
<h2>用 clear 清除浮動</h2>
<div>
<div class="fl item1"></div>
<div class="fl item2"></div>
<div></div>
</div>
<h2>用 clearfix 清除浮動</h2>
<div class="clearfix demo">
<div class="fl item1"></div>
<div class="fl item2"></div>
</div>
</body>
</html>
看了代碼發現沒有,clearfix 主要是用在浮動層的父層,而 clear 主要是用在浮動層與浮動層之間,和浮動層同一級,如果想要撐開父層的高度,clear 就要放在最后。