博客
关于我
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-connector-java.jar乱码,最新版mysql-connector-java-8.0.15.jar,如何愉快的进行JDBC操作...
查看>>
mysql-connector-java各种版本下载地址
查看>>
mysql-EXPLAIN
查看>>
MySQL-Explain的详解
查看>>
mysql-group_concat
查看>>
MySQL-redo日志
查看>>
MySQL-【1】配置
查看>>
MySQL-【4】基本操作
查看>>
Mysql-丢失更新
查看>>
Mysql-事务阻塞
查看>>
Mysql-存储引擎
查看>>
mysql-开启慢查询&所有操作记录日志
查看>>
MySQL-数据目录
查看>>
MySQL-数据页的结构
查看>>
MySQL-架构篇
查看>>
MySQL-索引的分类(聚簇索引、二级索引、联合索引)
查看>>
Mysql-触发器及创建触发器失败原因
查看>>
MySQL-连接
查看>>
mysql-递归查询(二)
查看>>
MySQL5.1安装
查看>>