CSS 清除浮动 clear 属性

本文介绍了CSS中的清除浮动机制,详细解释了clear属性的作用及其不同取值的意义。通过两个实例展示了如何利用clear属性来解决浮动元素导致的布局问题,并讨论了在实际应用中常见的两种解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CSS 清除浮动

clear 属性用于设定元素哪一侧不允许有其他浮动元素(而并非取消元素的浮动)。

可能的取值如下:
取值说明
none默认值,允许两侧都有浮动元素
left左侧不允许有其他浮动元素
right右侧不允许有其他浮动元素
both两侧都不允许有其他浮动元素

例子:

#div2{
    float: left;
    clear: both;
}

设想这么一种情况,一个div包含的内容都设置了浮动,那么内容就脱离文档流,将导致div实际没包含任何“内容”,如下左图所示:

清除浮动示意图

如何像右图那样在视觉上div包含内容呢?尤其在div要做边框显示的时候必须包含内容。

通常有两种方法解决此问题:

一、添加一个无任何内容的div并对它做浮动:

<div class="clear"></div>
.clear{
    clear: both;
}

这是为了布局效果而添加的无意义的标签,事实上很多网站也采取了这种策略,但这种策略会留下无意义的“垃圾”标签。

二、对容器DIV也进行浮动,使之成为一个块级元素。

如此一来达到了目的,但下一个元素会受到该浮动元素的影响。事实上,有人采取的策略是将文档中所有的元素都进行浮动处理,然后在页脚的地方对有意义的元素对这些浮动进行清理,以达到布局的目的。

转载于:https://www.cnblogs.com/loanhicks/p/7637341.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值