蓝戒博客

  • 首页
  • 研发说
  • 架构论
  • 效能录
  • AI谈
  • 随笔集
智构苍穹
融合 AI、架构与工程实践,沉淀方法论,构建可持续的技术价值。
  1. 首页
  2. 研发说
  3. 正文

css多行文本溢出显示省略号(…)解决方案

2015年8月26日 10556点热度 0人点赞 0条评论

单行文本溢出的解决方法我们知道通常是使用text-overflow:ellipsis属性来实现单行文本的溢出显示省略号(…)。当然部分浏览器还需要加宽度width属性,保险起见凡是要溢出的显示省略号的我们都要设置好宽,高。
单行文本溢出省略号css代码方案如下:

width:500px;
height:40px;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;

由于是做移动端页面遇到的多行文本溢出显示省略号(…)的问题,所以先介绍一下适用于移动端的我大css3的高级属性的实现方法:
在WebKit浏览器或移动端(绝大部分是WebKit内核的浏览器)的页面实现比较简单,可以直接使用WebKit的CSS扩展属性(WebKit是私有属性)-webkit-line-clamp ;
注意:这是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。
-webkit-line-clamp用来限制在一个块元素显示的文本的行数。 为了实现该效果,它需要组合其他的WebKit属性。
组合属性解决css3方案:

display: -webkit-box; /*必须结合的属性 ,将对象作为弹性伸缩盒子模型显示*/
-webkit-box-orient /*必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式*/

text-overflow: ellipsis; /*可以用来多行文本的情况下,用省略号“…”隐藏超出范围的文本*/

overflow : hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;

这个属性比较合适WebKit浏览器或移动端(绝大部分是WebKit内核的)浏览器。 比较靠谱简单的做法就是设置相对定位的容器高度,用包含省略号(…)的元素模拟实现;

下面整理一个跨浏览器兼容的解决方案:

p { position:relative; line-height:1.4em; /* 3 times the line-height to show 3 lines*/height:4.2em; overflow:hidden; }

p::after { content:"..."; font-weight:bold; position:absolute; bottom:0; right:0; padding:0 20px 1px 45px; background:url(http://css88.b0.upaiyun.com/css88/2014/09/ellipsis_bg.png) repeat-y; }

话说这样就可以了吗,no,还有可恶的ie,注意:IE6-7不显示content内容,所以要兼容IE6-7可以是在内容中加入一个标签,比如用...去模拟;
要支持IE8,需要将::after替换成:after;

另外整理js解决方案,用js也可以根据上面的思路去模拟,推荐几个做类似工作的小插件:
1.Clamp.js
下载及文档地址:https://github.com/josephschmitt/Clamp.js
使用也非常简单:

var module = document.getElementById("clamp-this-module");
$clamp(module, {clamp: 3});

2.jQuery插件-jQuery.dotdotdot

$(document).ready(function() {
$("#wrapper").dotdotdot({
// configuration goes here
});
});

jQuery限制字符字数的方法:

<script>
$(function() {
$(".task_con_l p").each(function() {
var maxwidth = 150;
if ($(this).text().length > maxwidth) {
$(this).text($(this).text().substring(0, maxwidth));
$(this).html($(this).html() + '......');
}
});
});
</script>

标签: css css3 文本溢出
最后更新:2025年9月12日

cywcd

我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

cywcd

我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

最新 热点 随机
最新 热点 随机
深扒 Google Gemini Spark 这位"24小时不下班"的AI管家 Google推出Code Wiki,把“屎山代码”秒变可聊天的百科全书! VideoLingo凭什么敢称“全自动的视频本地化流水线”? 首个超2万亿级开源模型Kimi K3震撼发布,大模型格局彻底变天了? 别再手写 AI Agent 了!谷歌开源 agents-cli,一键给你的 AI 助手加满神仙级技能点 ChatGPT 实时语音 vs Gemini Live:深度实测!谁才是地表最强“无痛嘴替”?
开发者集体起立!cc-switch更新:原生干掉外挂,协议、会话、技能全包圆了!一键生成百万播放短视频?被吹上天的RedditVideoMakerBot,到底是搞钱神器还是时间杀手?别再迷信传统 RAG 了!知识库新物种 SAG 强势登场,实时干掉大模型“幻觉”!别再死磕提示词了!Google Flow Agent 彻底颠覆 AI 视频,有手就能当导演剪映要收网了?狂割韭菜后,这款狂揽5.7万Star的开源神器砸了谁的饭碗!被Figma卡脖子?这款自托管的开源神仙工具:Penpot,才是设计与开发的终极解药!
javascript中DOM0,DOM2,DOM3级事件模型解析 2026下半年,AI Agent 正在悄悄重塑每个人的职业轨迹:你抓住了吗?​ 前端构建工具全景对比与选型思考 js判断浏览器类型并区分IE不同版本 body 设置字体样式后会影响整体的文档结构上下文:问题分析与 Web Components 开发策略 本地开发环境启用 HTTPS / HTTP2 :使用 mkcert 实践分享
最近评论
渔夫 发布于 9 个月前(11月05日) 学到了,感谢博主分享
沙拉小王子 发布于 9 年前(11月30日) 适合vue入门者学习,赞一个
沙拉小王子 发布于 9 年前(11月30日) 适合vue入门者学习,赞一个
cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8
cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8

COPYRIGHT © 2025 蓝戒博客_智构苍穹-专注于大前端领域技术生态. ALL RIGHTS RESERVED.

京ICP备12026697号-2