浮动中出现的高度塌陷问题和解决方法

本文介绍了如何通过开启边界格式化上下文(BFC)来解决浮动元素导致的高度塌陷问题。主要方法包括设置父元素浮动、将其转换为行内块元素以及使用`overflow`属性。`clear`属性用于清除浮动影响,而使用`:after`伪元素创建BFC则是一种不增加额外结构的解决方案。此外,文章提到了clearfix类作为解决高度塌陷和外边距重叠的实用方法。

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

开启的BFC的一般方式:

        1.设置父元素的浮动(不推荐)

        2.把父元素设置为行内块元素(不推荐)

        3.overflow设置为一个非visible的值

                常用的是hidden

clear:  清除浮动元素对当前元素的影响

        clear:left

                -清除左侧浮动元素对当前元素的影响

        clear:right

                -清除右侧浮动元素对当前元素的影响

        clear:both

                -清除两侧中最大影响的那一侧

给box3设置clear以后,box3不会受到box2浮动的影响,所以会撑起父元素box1的高度

能解决高度塌陷,但是给网页添加了多余的结构,所以不推荐使用

(最好的解决高度塌陷的方式)可以使用after来解决高度塌陷问题:

        原理与clear一样,但是不直接添加一个网页结构,而是使用伪元素

                注意:伪元素,默认是行内元素,所以需要display:block;

        

 在实际使用时,可以直接使用clearfix

        clearfix这个样式可以同时解决高度塌陷与外边距重叠的问题,当你遇到这些问题时,直接使用即可,使用时只需要给元素添加一个类名 clearfix

        

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值