博客
关于我
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处理千万级数据分页查询的优化方案
查看>>
mysql备份
查看>>
mysql备份与恢复
查看>>
mysql备份工具xtrabackup
查看>>
mysql备份恢复出错_尝试备份/恢复mysql数据库时出错
查看>>
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>
mysql字段类型不一致导致的索引失效
查看>>