CSS的clear属性清除浮动的基本用法示例

(编辑:jimmy 日期: 2024/10/31 浏览:2)

什么是CSS清除浮动?
网络上流行的说法是:在非IE浏览器(如Firefox)下,当容器的高度(height)为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象。这个现象叫浮动溢出,为了防止这个现象的出现而进行的CSS处理,就叫CSS清除浮动。

使用 clear 样式清除
样例:

CSS Code复制内容到剪贴板
  1. .clear-float {clear:both;}   

clear 属性是 CSS 1 就提供的用来清除浮动的样式,设置了 clear 属性的元素,其上边框位置会紧贴浮动元素的 margin-bottom 边界位置渲染,忽略其 margin-top 设置。这样,父容器高度未设定(值是 auto)时,由于定义的清理浮动样式元素所在位置处于浮动元素之下,容器计算后的实际高度就包含了浮动元素。

实例
在代码中添加了div4,并设置宽高300px,灰色背景色,代码如下

HTML代码:

XML/HTML Code复制内容到剪贴板
  1. <div class="div4">  
  2.     div4   
  3. </div>  

CSS代码:

CSS Code复制内容到剪贴板
  1. .div4 {   
  2.     width: 300px;   
  3.     height: 300px;   
  4.     background-color: darkgray;   
  5. }  

效果如下:
CSS的clear属性清除浮动的基本用法示例

1.被红色线条圈起来的就是div4,大家会发现个问题,就是div4依然是从左上角的点进行排布的,但是文字却没有在左上角的位置,这个就是浮动会带来的问题。
2.如果我们想要实现div4贴在div2下面和div3右侧的效果,就同时也需要给div4设置float: left属性描述
但是我们并不想要这种效果,而是想要让div4在下面重新排布,而不跟着div1、div2、div3他们浮动,这时候,我们就需要清除浮动了

CSS Code复制内容到剪贴板
  1. .div4 {   
  2.     width: 300px;   
  3.     height: 300px;   
  4.     background-color: darkgray;   
  5.     clear: both;   
  6. }  

只需要添加clear: both;属性,就可以清除浮动了。

效果如下:
CSS的clear属性清除浮动的基本用法示例

清除浮动之后,div4就可以从下面自己排列了,不会再参与上面几个div的浮动。这就是所谓的清除浮动。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。