博客
关于我
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/

你可能感兴趣的文章
mysql where中如何判断不为空
查看>>
MySQL Workbench 使用手册:从入门到精通
查看>>
MySQL Workbench 数据库建模详解:从设计到实践
查看>>
MySQL Workbench 数据建模全解析:从基础到实践
查看>>
mysql workbench6.3.5_MySQL Workbench
查看>>
MySQL Workbench安装教程以及菜单汉化
查看>>
MySQL Xtrabackup 安装、备份、恢复
查看>>
mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
查看>>
MySQL _ MySQL常用操作
查看>>
MySQL – 导出数据成csv
查看>>
MySQL —— 在CentOS9下安装MySQL
查看>>
MySQL —— 视图
查看>>
mysql 不区分大小写
查看>>
mysql 两列互转
查看>>
MySQL 中开启二进制日志(Binlog)
查看>>
MySQL 中文问题
查看>>
MySQL 中日志的面试题总结
查看>>
mysql 中的all,5分钟了解MySQL5.7中union all用法的黑科技
查看>>
MySQL 中的外键检查设置:SET FOREIGN_KEY_CHECKS = 1
查看>>
Mysql 中的日期时间字符串查询
查看>>