overflow(溢出)4个属性值,水平/垂直溢出,文字超出显示省略号的详解

你好,我是云桃桃。

一个希望帮助更多朋友快速入门 WEB 前端的程序媛。

云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合集

279篇原创内容-更多前端系列内容可以go公众.h:云桃桃

后台回复“前端工具”可获取开发工具,持续更新中

后台回复“前端基础题”可得到前端基础100题汇总,持续更新中

后台回复“前端电子书”可获取20+本精选电子书

前言

CSS 的 overflow 属性用于控制元素内容溢出时的表现方式。当元素的内容超出其指定的尺寸范围时,就会出现溢出现象。比如,一个元素的高度设置是 80px,但内容高度不只是 80px,内容此时就叫做溢出了。

图片

而 overflow 属性则可以决定如何处理这种溢出情况,能让溢出部分,达到如下效果,。右侧出现了滚动条,可以查看所有内容了。

图片

那需要注意的是,overflow 属性生效的前提是需要设置元素的宽度和高度。如果没有明确设置宽度和高度,浏览器将会自动根据内容进行调整,此时 overflow 属性可能不会产生预期的效果。

ok,那我们一起来看看吧。

overflow 的 4 个属性值

1、visible:默认值,溢出内容会显示在元素框外,不会被剪切或隐藏。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .box {
        background-color: #ddd;
        width: 300px;
        height: 80px;
        border: 1px dotted #333;
        font-size: 26px;
        overflow: visible;
      }
    </style>
  </head>
  <body>
    <div class="box">周杰伦(Jay Chou),1979年1月18日出生于台湾省新北市,祖籍福建省永春县,华语流行乐男歌手、音乐人、演员、导演、编剧,毕业于淡江中学。2000年,发行个人首张音乐专辑《Jay》 [26]。2001年,凭借专辑《范特西》奠定其融合中西方音乐的风格 [16]。2002年,举行“The One”世界巡回演唱会 [1]。2003年,成为美国《时代》杂志封面人物 [2];同年,发行音乐专辑《叶惠美》 [21],该专辑获得第15届台湾金曲奖最佳流行音乐演唱专辑奖 [23]。2004年,发行音乐专辑《七里香》 [29],该专辑在亚洲的首月销量达到300万张 [316];同年,获得世界音乐大奖中国区最畅销艺人奖 [320]。2005年,主演个人首部电影《头文字D》 [314],并凭借该片获得第25届香港电影金像奖和第42届台湾电影金马奖的最佳新演员奖 [3] [315]。2006年起,连续三年获得世界音乐大奖中国区最畅销艺人奖 [4]。</div>
  </body>
</html>

效果如下:

图片

2、hidden:溢出内容会被剪切或隐藏,不会显示在元素框外,但也不会提供滚动条。

还延续上个案例,把最后一行 css 改成overflow: hidden;

效果如下,内容被剪切隐藏了:

图片

3、scroll:如果内容溢出,会显示滚动条以便查看所有内容,即使溢出内容不可见。

把 css 改成overflow: scroll;

效果如下,展示了滚动条了:

图片

4、auto:根据内容是否溢出来决定是否显示滚动条,只有当内容有溢出情况发生时才会显示滚动条,不溢出不显示。

把 css 改成overflow: auto;

效果如下,因为内容多溢出了,所以展示滚动条了:

图片

overflow 的水平与垂直

有时候,我们也许不需要水平和垂直都有,而是垂直有,水平没有,或者水平没有,垂直有,怎么做呢?

overflow-x 和 overflow-y就是来解决这个问题的, 它们是用于控制元素在水平和垂直方向上溢出内容的属性。

  • overflow-x:用于控制元素在水平方向上溢出内容的显示方式。其属性值和上述overflow的 4 个属性值一样。

  • overflow-y:用于控制元素在垂直方向上溢出内容的显示方式。其属性值和上述overflow的 4 个属性值一样。

它们通常用于以下布局场景:导航栏/标签栏,数据表格,图片/图册,横向滚动的页面区域等。

来看代码,这个就是一个横向相册的案例:

<div class="container">
  <div class="content"><img src="img/header1.png" alt="" /> <img src="img/header1.png" alt="" /><img src="img/header1.png" alt="" /><img src="img/header1.png" alt="" /><img src="img/header1.png" alt="" /></div>
</div>
.container {
  width: 600px; /* 设置容器宽度 */
  height: 240px; /* 设置容器高度 */
  border: 1px solid #ccc;
  overflow-x: auto; /* 当内容溢出时显示滚动条 */
  overflow-y: hidden; /* 垂直方向上隐藏溢出内容 */
}

.content {
  width: 1200px; /* 设置内容宽度超出容器 */
  height: 150px; /* 设置内容高度 */
  padding: 10px; /* 设置内边距 */
}
.content img {
  margin-right: 10px;
}

效果如下:

图片

需要图片的可以在公众号回复overflow获取。

延伸:3个常见的使用场景

1、处理长文本溢出显示省略号

  • 场景:当文本内容超出容器宽度时,需要控制文本到一定宽度后,显示...省略号。比如网易云音乐的这样。

图片

  • 解决方案:通常使用 overflow: hidden;配合white-space text-overflow这三个属性一起实现文本超出显示省略号。

这种效果的代码如下:

<div class="txt-over">这个内容这么长这么长这么长这么长这么长这么长这么长这么长这么长这么长这么长这么长abcdef.</div>
.txt-over {
  width: 400px;
  white-space: nowrap; /* 防止文本换行 */
  overflow: hidden; /* 溢出部分隐藏 */
  text-overflow: ellipsis; /* 超出部分显示省略号 */
  border: 1px solid #ccc;
}

效果如下:

图片

2、图片溢出处理

  • 场景:当图片尺寸大于页面要求尺寸时,需要控制图片的显示的一种缺省方式。

  • 解决方案:可以根据情况使用 overflow: hidden;,将溢出的部分隐藏,以保持容器的视觉整洁。

.image-container {
  width: 300px; /* 容器宽度 */
  height: 200px; /* 容器高度 */
  overflow: hidden; /* 溢出部分隐藏 */
}

3、轮播图

  • 场景:在轮播图组件中,通常会有多张图片或内容进行轮播展示。比如,京东的圈的这块。

图片

  • 解决方案:需要结合 JavaScript 实现轮播功能,并使用 overflow: hidden; 控制容器显示范围,配合定位或动画实现图片切换效果。

.carousel-container {
  width: 100%; /* 容器宽度 */
  height: 300px; /* 容器高度 */
  overflow: hidden; /* 溢出部分隐藏 */
  position: relative; /* 相对定位,用于轮播图元素定位 */
}

根据具体需求和展示效果,选择合适的 overflow 属性值,可以有效控制元素的溢出内容,提升页面的视觉效果和用户体验。

ok,本文完。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/563148.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解析 IP(IPv4)地址

IPv 4 地址 一、组成二、IPv4 的分类三、子网掩码四、特殊的地址五、私有 IP 地址六、全局 IP 地址七、私有 IP 地址和全局 IP 地址的关系八、广播地址九、网络地址十、IP 地址个数计算十一、查看电脑的 IP 地址&#xff08;window&#xff09;十二、手动设置电脑的 IP 地址 为…

C语言练习——上三角矩阵

前言 今天我们来看看如何使用代码实现上三角矩阵吧。首先我们来了解一下上上三角矩阵是什么&#xff0c;上三角矩阵就是在矩阵从左上到右下的对角线之下的数组元素都为0的数组方矩阵&#xff0c;例如&#xff1a; 以一个三阶矩阵为例&#xff0c;在对角线元素之下&#xff0c;就…

基于 Spring Boot 博客系统开发(一)

基于 Spring Boot 博客系统开发&#xff08;一&#xff09; 本系统是简易的个人博客系统开发&#xff0c;为了更加熟练地掌握SprIng Boot 框架及相关技术的使用。&#x1f913;&#x1f913;&#x1f913; 本系统开发所需的环境及相关软件 操作系统&#xff1a;Windows Java…

面试高频:HTTPS 通信流程

更多大厂面试内容可见 -> http://11come.cn 面试高频&#xff1a;HTTPS 通信流程 HTTPS 的加密流程 接下来说一下 HTTPS 协议是如何进行通信的&#xff1a; HTTPS 通信使用的 对称加密 非对称加密 两者结合的算法 HTTPS 通信时&#xff0c;会先使用 非对称加密 让通信双…

什么是OCR转换?

OCR转换是指将图片或扫描文档中的文字内容转换成电子文本的过程。OCR代表光学字符识别&#xff08;Optical Character Recognition&#xff09;&#xff0c;是一种通过算法和模型来识别图像或文档中的文字&#xff0c;并将其转换成可编辑、可搜索的文本格式。OCR转换通常包括以…

企业常用Linux三剑客awk及案例/awk底层剖析/淘宝网cdn缓存对象分级存储策略案例/磁盘知识/awk统计与计算-7055字

高薪思维&#xff1a; 不愿意做的事情:加班&#xff0c;先例自己在利他 生活中先利他人在利自己 感恩&#xff0c;假设别人帮助过你&#xff0c;先帮助别人&#xff0c;感恩境界 awk三剑客老大 find其实也算是一种新的第四剑客 find 查找文件 查找文件&#xff0c;与其他命令…

Linux基础03-Linux文件操作命令

其实啊&#xff0c;说起计算机操作&#xff0c;大部分情况下就是“增删改查”这四个大字儿&#xff0c;文件操作也是这么回事儿。 就是改文件的时候得用点专门的编辑器&#xff0c;比如那个Vim。 不过Vim这东西&#xff0c;真心不是一两句话就能给你讲清楚的&#xff0c;咱们在…

socket套接字在tcp客户端与tcp服务器之间的通信,以及socket中常用的高效工具epoll

1.socket&#xff08;套接字&#xff09;的概念 Socket是对TCP/IP协议的封装&#xff0c;Socket本身并不是协议&#xff0c;而是一个调用接口&#xff08;API&#xff09;&#xff0c;通过Socket&#xff0c;我们才能使用TCP/IP协议,主要利用三元组【ip地址&#xff0c;协议&am…

STM32F1之I2C通信

目录 1. 简介 2. 硬件电路 3. IIC时序基本单元 3.1 发送一个字节 3.2 接收一个字节 3.3 发送应答 3.4 接收应答 1. 简介 I2C&#xff08;Inter-Integrated Circuit&#xff09;总线是由NXP Semiconductors&#xff08;前身为Philips Semiconductor&#xff09;…

【C++初阶】vector使用特性 vector模拟实现

1.vector的介绍及其使用 1.1 vector的介绍 vector文档介绍 1. vector是表示可变大小数组的序列容器。 2. 就像数组一样&#xff0c;vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问&#xff0c;和数组一样高效。但是又不像数组&#…

浏览器数据找回

网站上分享的文章应该都是个人的心血&#xff0c;对于一些操作问题导致心血丢失真的很奔溃&#xff0c;终于找到一个弥补的办法&#xff0c;csdn的文章谷歌浏览器亲测有效&#xff0c;理论上其他浏览器的其他网站应该也可以&#xff0c;适用以下场景 把博客编辑当成了编写新博…

ELK 日志分析(二)

一、ELK Kibana 部署 1.1 安装Kibana软件包 #上传软件包 kibana-5.5.1-x86_64.rpm 到/opt目录 cd /opt rpm -ivh kibana-5.5.1-x86_64.rpm 1.2 设置 Kibana 的主配置文件 vim /etc/kibana/kibana.yml --2--取消注释&#xff0c;Kiabana 服务的默认监听端口为5601 server.po…

ARM与单片机有啥区别?

初学者必知&#xff1a;ARM与单片机到底有啥区别&#xff1f;1、软件方面这应该是最大的区别了。引入了操作系统。为什么引入操作系统&#xff1f;有什么好处嘛&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「ARM的资料从专业入门到高级教…

如何扛过人生的至暗时刻,获得幸福人生?

人生的至暗时刻是每个人在成长过程中都可能遇到的经历&#xff0c;它们可能包括失去亲人、失业、健康问题、情感破裂或其他形式的个人危机。在这些时刻&#xff0c;我们可能会感到绝望、孤独和无助。然而&#xff0c;正是在这些挑战中&#xff0c;我们也有机会学习如何变得更坚…

VUE运行找不到pinia模块

当我们的VUE运行时报错Module not found: Error: Cant resolve pinia in时 当我们出现这个错误时 可能是 没有pinia模块 此时我们之要下载一下这个模块就可以了 npm install pinia

同旺科技 USB TO SPI / I2C适配器读写24LC128--读写

所需设备&#xff1a; 1、USB 转 SPI I2C 适配器&#xff1b;内附链接 2、24LC128芯片&#xff1b; 适应于同旺科技 USB TO SPI / I2C适配器专业版&#xff1b; 专业版配套软件更新&#xff1b; 直接读取HEX文件&#xff0c;自动完成文件解析&#xff1b; 支持芯片&#xf…

【编程Tool】VS code安装与使用配置保姆级教程

目录 1.软件介绍 2.软件下载&#xff1a; 3.安装 3.1. 双击可执行文件 3.2. 同意协议 3.3. 选择安装路径&#xff0c;默认在C盘 3.4. 点击下一步 3.5. 可选择所有附加任务 3.6. 点击安装 3.7. 等待安装 3.8. 点击完成 3.9. 安装成功 4.下载MinGW64 4.1. MinGW-64下载地址 &…

《深入浅出.NET框架设计与实现》笔记2——C#源码从编写到执行的流程

中间语言&#xff08;Intermediate Language&#xff0c;IL&#xff09; C#编译器在编译时&#xff0c;会将源代码作为输入&#xff0c;并以中间语言形式输入出&#xff0c;该代码保存在*.exe文件中或*.dll文件中。 公共语言运行时&#xff08;CLR&#xff09; 可以将IL代码…

控制与估计的融合 —— 自抗扰控制

一、自抗扰控制—控制与估计融合 控制理论中的控制与估计是互为对偶的概念&#xff0c;二者在系统控制过程中相辅相成&#xff0c;共同实现了对系统状态的精确管理和优化控制。自抗扰控制&#xff08;Adaptive Disturbance Rejection Control, ADRC&#xff09;技术是将控制与…

天星金融(原小米金融)履行社会责任,提高社保政策知晓度

二十大报告指出“为民造福是立党为公、执政为民的本质要求“&#xff0c;人民幸福安康是推动高质量发展的最终目的。社会保障作为维护社会公平、增进人民福祉的基本制度&#xff0c;既是“安全网”也是“稳定器”&#xff0c;发挥着改善民生的重要作用。为进一步提升人民群众对…