如何清除浮动

1. 额外标签法:

方法:在最后一个浮动元素之后添加一个空的标签(如<div>、<br>、<hr>等),并给这个标签设置 clear: both; 属性。
优点:简单、易理解、书写方便。
缺点:需要添加额外的HTML元素,可能会增加文档的结构复杂性,且这些元素往往没有实际的语义价值。

2. 父级添加overflow属性:

方法:给浮动元素的父元素设置 overflow: hidden;overflow: auto; 属性。
原理:通过触发BFC(块级格式化上下文)来清除浮动。
优点:代码简洁。
缺点:如果内容增多,可能会造成内容被隐藏,无法显示溢出的元素。此外,这种方法可能会与position属性产生冲突。

3. 使用after伪元素:

方法:在浮动元素的父元素上使用:after伪元素,并设置

content:" ";
display: block;
clear: both; 

优点:符合闭合浮动思想,结构语义化正确,不需要额外添加HTML元素。
缺点:IE6/7不支持:after伪元素。

4. 使用before和after双伪元素:

方法:与单伪元素方法类似,但在父元素上同时使用:before和:after伪元素,并设置 content: " "; display: table; 以及:after伪元素的 clear: both; 属性。
优点:代码更简洁,且能更好地兼容一些特殊情况。
缺点:需要针对IE6/7进行hack处理。

5. 父级设置固定高度:

方法:直接给浮动元素的父元素设置一个固定的高度。
优点:简单、直接。
缺点:只适用于高度固定的布局场景,如果内容高度变化,则需要重新调整父元素的高度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值