首页IT科技单行和多行文本溢出显示省略号如何实现(CSS实现单行、多行文本溢出显示省略号(…))

单行和多行文本溢出显示省略号如何实现(CSS实现单行、多行文本溢出显示省略号(…))

时间2025-05-04 08:39:57分类IT科技浏览3776
导读:提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档...

提示:文章写完后           ,目录可以自动生成                ,如何生成可参考右边的帮助文档

一           、单行超出显示省略号

描述:如果文字超出父元素指定宽度     ,文字会自动换行           ,而连续不间断数字和英文字母(没有其他字符)不会自动换行;

详细步骤: 第一步(不换行):white-space:nowrop;(对于连续的数字或者英文字母可省略) 第二步(溢出隐藏)overflow:hidden; 第三步(文本溢出显示省略号)text-overflow:ellipsis;(省略号)

直接看代码:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>单行省略号</title> <style> .app { width: 400px; height: 28px; line-height: 28px; margin: 50px 0 0 50px; border: 1px solid red; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } </style> </head> <body> <div class="app"> <span class="content">你问我为何时常沉默                ,有的人无话可说     ,有的话无人可说.你问我为何时常沉默      ,有的人无话可说                ,有的话无人可说.</span> </div> </body> </html>

效果图:

关键点: //超出一行省略号 white-space: nowrap; //禁止换行 overflow: hidden; text-overflow: ellipsis; //...

二                、多行超出显示省略号

a.对于内核是webkit的浏览器(Google/Safari),可以直接用CSS样式;

溢出隐藏:overflow: hidden; 省略号:text-overflow: ellipsis; display: -webkit-box; 弹性盒模型: 设置弹性盒子的子元素的排列方式 :-webkit-box-orient: vertical; 设置显示文本的行数:-webkit-line-clamp: 3; (最多显示3行)

直接看代码:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>多行省略号</title> <style> .content { display: -webkit-box; width: 400px; line-height: 1.5; margin: 50px 0 0 50px; border: 1px solid red; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } </style> </head> <body> <div class="app"> <span class="content">你问我为何时常沉默           ,有的人无话可说      ,有的话无人可说.你问我为何时常沉默                ,有的人无话可说           ,有的话无人可说. </span> </div> </body> </html>

效果图:

关键点:

//超出两行省略号 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; line-clamp: 2; -webkit-line-clamp: 2; //显示几行

b.兼容各种浏览器的方法

(1)利用伪类(IE6/IE7不支持)

直接看代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>多行省略号</title> <style> .content { display: inline-block; width: 400px; height: 56px; line-height: 28px; margin: 50px 0 0 50px; border: 1px solid red overflow: hidden; } .ellipsis::after{ content: "..."; display: inline; } </style> </head> <body> <div class="app"> <span class="content">你问我为何时常沉默,有的人无话可说                ,有的话无人可说.你问我为何时常沉默                ,有的人无话可说,有的话无人可说. </span> <span class="ellipsis"></span> </div> </body> </html>

效果图:

关键点:

//超出两行省略号 .ellipsis::after{ content: "..."; display: inline; }

(2)利用定位和padding-right

直接看代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>desktop demo</title> <style> .content { width: 400px; height: 56px; line-height: 28px; margin: 50px 0 0 50px; border: 1px solid red; overflow: hidden; padding-right: 12px; /* 留出省略号位置 */ position: relative; } .ellipsis{ position: absolute; right:10px; bottom: 0; } </style> </head> <body> <div class="content">你问我为何时常沉默           ,有的人无话可说                ,有的话无人可说.你问我为何时常沉默     ,有的人无话可说           ,有的话无人可说. <span class="ellipsis">...</span> </div> </body> </html>

效果图:

关键点: //超出两行省略号 .content { ... overflow: hidden; padding-right: 12px; /* 留出省略号位置 */ position: relative; } .ellipsis{ position: absolute; right:10px; bottom: 0; }
声明:本站所有文章                ,如无特殊说明或标注     ,均为本站原创发布           。任何个人或组织      ,在未征得本站同意时                ,禁止复制     、盗用      、采集                、发布本站内容到任何网站          、书籍等各类媒体平台                。如若本站内容侵犯了原著者的合法权益           ,可联系我们进行处理     。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
get请求传递参数用params吗(前端 – get请求传递数组) 登陆路由器后,怎么看网络是好是坏(登录路由器怎么看网络异常)