清除元素
float属性的一个同伴是clear属性,它控制跟随一个浮动的元素的位置。这个属性中用来防止内容跟随一个浮动的元素,迫使它移动到浮动的下一行。
clear属性可以取四个值:left,它把元素推到前面生成的向左浮动的元素下面;right,它把元素推到前面生成的向右浮动的元素下面;both,它把元素推到前面生成的所有元素下面;和none,它取消前面的定位。有趣的是,clear属性不像人们认为的那样,仅限于非浮动元素;相反,它还可以用来控制浮动元素的行为,把一个浮动元素推到其它浮动元素下面。
例3:垂直图片栏,周围环绕文本
要理解这种情况,请看下面的例子(列表C),它创造性的使用float和clear属性,将一组图片垂直排列。
列表C
<html>
<head>
<style type="text/css">
.floater {
float: left;
clear: left;
border: solid 1px black;
padding: 5px;
margin: 5px 15px 5px 5px;
width: 100px;
height: 75px;
}
</style>
</head>
<body>
<img class="floater" src="pix2180.jpg" />
<img class="floater" src="pix2181.jpg" />
Loremipsum dolor sit amet, consecteturadipisicingelit, sed do eiusmodtemporincididuntutlabore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteursintoccaecatcupidatat non proident, sunt in culpa qui officiadeseruntmollitanim id estlaborum. Loremipsumdolor sitamet, consecteturadipisicingelit, sed do eiusmodtemporincididuntutlabore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
</body>
</html>
这里的所有图片都向左浮动,clear的使用情况:第二幅图片的left属性保证它被推到第一幅图片下面,建立一种垂直结构。注意,第一幅图片也使用了clear属性,但因为它上面没有图片,所以没有产生效果。使用float属性也保证页面(重要的是,它是非式样页面)中的文本块围绕在图片栏周围。
以下是输出结果(图C):

当然,这三个例子只是浮动元素应用的冰山一角。应用float和clear属性,还可以实现更多布局和更灵活的界面设计。但是,上面的例子应能让你了解这些属性的实际应用,你现在应该有足够的知识开始自己的实践。那你还等什么?开始吧——编码快乐!