博客
关于我
overflow:hidden使用(溢出隐藏、清除浮动、解决外边距塌陷等等)
阅读量:768 次
发布时间:2019-03-24

本文共 1318 字,大约阅读时间需要 4 分钟。

ElementRef

1. Overflow: hidden (溢出隐藏)

当设置一个元素的 overflow: hidden 时,其内容超出指定的宽度和高度时会被隐藏,不会占据任何空间。这意味着元素不会因为内容过多而扩展,保持固定的尺寸。

常见应用场景包括创建有固定尺寸的容器,确保内容不会溢出屏幕,或者在文本元素中隐藏过长的内容。

典型的CSS代码示例:

div {  width: 150px;  height: 60px;  background: skyblue;  overflow: hidden;}

HTML示例:

今天天气很好!
今天天气很好!
今天天气很好!
今天天气很好!
今天天气很好!

结果:内容超出容器会被隐藏,不影响容器布局。

特殊情况:限制单行文本溢出

有时,我们需要确保多句话文本内容不会超过容器宽度,可以使用以下方式:

div {  width: 150px;  background: skyblue;  overflow: hidden;  white-space: nowrap;  text-overflow: ellipsis;}

结果:内容超出部分会显示省略号 "..."

样例表现:

图片描述(仅为示意)


2. Overflow: hidden(清除浮动)

当父级容器未设置高度,子级浮动元素会脱离文本流,导致父级无法正确计算高度,可能引起页面塌陷(内容重叠)。

例如:

其他部分

当子元素浮动时:

.kid {  width: 100px;  height: 100px;  float: left;}

问题:浮动子元素无法设置父级高度,导致塌陷。

解决方法:为父级添加 overflow: hidden

.wrap {  width: 300px;  height: 150px;  background: blue;  overflow: hidden;  zoom: 1; /* IE兼容 */}

效果:

图片描述(仅为示意)

注:zoom: 1 是为了在IE低版本中支持 overflow: hidden


3. Overflow: hidden(解决外边距塌陷)

当父级子元素有 margin 属性,父级未设置 overflow: hidden 时,子级的外边距会影响父级高度,导致外边距塌陷。

例如:

.child {  margin-top: 20px;}

如果父级没有 overflow: hidden,效果将如下:

图片描述(仅为示意)

解决方法:为父级设置 overflow: hidden

.parent {  overflow: hidden;}

此时,父级会正确包裹子级内容,避免外边距塌陷。


总结:

overflow: hidden 是一个强大但容易被忽视的CSS属性,广泛应用于内容限制、清除浮动和布局修复等场景。合理使用overflow: hidden 可以提升页面性能和美观度。

转载地址:http://nyvkk.baihongyu.com/

你可能感兴趣的文章
OSG学习:场景图形管理(四)——多视图多窗口渲染
查看>>
OSG学习:新建C++/CLI工程并读取模型(C++/CLI)——根据OSG官方示例代码初步理解其方法
查看>>
Sql 随机更新一条数据返回更新数据的ID编号
查看>>
OSG学习:空间变换节点和开关节点示例
查看>>
OSG学习:纹理映射(一)——多重纹理映射
查看>>
OSG学习:纹理映射(七)——聚光灯
查看>>
OSG学习:纹理映射(三)——立方图纹理映射
查看>>
OSG学习:纹理映射(二)——一维/二维/简单立方图纹理映射
查看>>
OSG学习:纹理映射(五)——计算纹理坐标
查看>>
OSG学习:纹理映射(六)——灯光
查看>>
OSG学习:纹理映射(四)——三维纹理映射
查看>>
OSI七层模型的TCP/IP模型都有哪几层和他们的对应关系?
查看>>
OSM数据如何下载使用(地图数据篇.11)
查看>>
OSPF 四种设备角色:IR、ABR、BR、ASBR
查看>>
SQL Server 存储过程分页。
查看>>
OSPF不能发现其他区域路由时,该怎么办?
查看>>
OSPF两个版本:OSPFv3与OSPFv2到底有啥区别?
查看>>
SQL Server 存储过程
查看>>
OSPF在大型网络中的应用:高效路由与可扩展性
查看>>
OSPF技术入门(第三十四课)
查看>>