CSS浮动元素与元素溢出解决

本文探讨了CSS中的浮动元素和元素溢出问题。首先介绍了标准文档流,包括块级元素和行内元素的区别。接着讲解了`display`属性在块级元素与行级元素转换、一行显示和元素隐藏中的应用。然后详细阐述了`float`属性如何实现元素排列,并讨论了浮动后导致的边框塌陷问题以及`clear`属性在清除浮动影响中的局限。最后总结了防止父级边框塌陷的四种方法,包括空div、设定父级高度、使用`overflow`属性,并提到了各自的优缺点。

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

CSS浮动元素与元素溢出解决



前言

做项目时,遇到个css样式问题,今天来回顾记录一下css中的浮动元素


一、标准文档流

标准文档流:指元素根据块元素或行内元素的特性按从上到下,从左到右的方式自然排列。这也是元素默认的排列方式

标准文档流组成
块级元素(block)
<h1>…<h6>、<p>、<div>
列表 内联元素(inline)
<span>、<a>、<img/>、<strong>…

内联标签可以包含于块级标签中,成为它的子元素,而反过来则不成立

二、display属性

说明
block块级元素的默认值,元素会被显示为块级元素,该元素前后会带有换行符
inline内联元素的默认值,元素会被显示为内联元素,该元素前后没有换行符
inline-block行内块元素,元素即具有内联元素的特性,也具有块元素的特性
none设置元素不会被显示

示例:

<style>
	#id{
		//设置元素为内联元素
		display:inline;
	}

</style>

display特性:
1.块级元素与行级元素的转变
2.控制块元素排到一行
3.控制元素的显示和隐藏


三.float属性

将块元素排在一行需要用到什么属性?

1.inline-block
2.float

float属性示例:

<style>
	#id{
		float:left;//左浮动
		float:right;//右浮动
	}


</style>

当设置完元素的宽高和浮动之后,边框会塌陷,解决方法是使用清除浮动元素.
在这里插入图片描述
使用示例:

<style>
	#id{
		clear:both;
	}

</style>

clear属性可以清除浮动对其他元素造成的影响,可是依然解决不了父级边框塌陷问题,怎么办?
溢出处理:
父级添加overflow属性

说明
visible默认值,内容不会被修剪,会呈现在盒子之外
hidden内容会被修剪,并且其余内容是不可见的
scroll内容会被修剪,但是浏览器会显示滚动条以便查看其余内容
auto如果内容被修剪,则浏览器会显示滚动条以便查看其余内容

使用示例:

<style>
	#id{
		overflow:auto;
	}
</style>

四.小结

清除浮动,防止父级边框塌陷的四种方法
浮动元素后面加空div
简单,空div会造成HTML代码冗余
设置父元素的高度
简单,元素固定高会降低扩展性
父级添加overflow属性
简单,下拉列表框的场景不能用

有哪里不足或者更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴可以私信我,我会一一答复,感谢认可,感谢支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aqi00008B

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值