超过固定宽度(或行数)显示...(或省略)

作为前端经常遇到的一个需求。对于一些比较长的文本做限制,不显示,或者显示省略号。今天特意整理了一下,做个备忘。

css实现单行、多行文本超出显示省略号

1.超出固定长度显示...

1
2
3
4
5
6
.class{
    width: 400px;
    overflow: hidden;       //这个是设置隐藏的。还有其他的,例如scroll,是超出固定长度,底部显示滚动条的。
    text-overflow: ellipsis;   //这个就是设置直接隐藏掉文字,还是显示...的。当前是显示省略号。直接省略是clip
    display: inline-block;     //根据不同标签display值,有的不用加。
}

2.超出固定行数显示...

超出固定行数。显示省略号,和上面差不多。overflow和text-overflow见上方解释。

1
2
3
4
5
6
7
.class{
    overflow: hidden;     
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;  //这里就是设置超出几行隐藏
    -webkit-box-orient: vertical;
    display:-webkit-box;  //根据不同标签display,有的不用加。或者设置成别的属性,自己可以随便试试
}

巨坑提醒(多行隐藏)

有的时候,你按照上面的设置。就是不生效。或者本地生效了,react(或者vue)打包到服务器上就不生效了。你可以在控制台看看。是不是-webkit-box-orient这个属性消失了。如果是这样的话,请看下面的解决办法。

1
2
3
4
5
6
7
8
9
10
11
12
13
// 办法1。
直接在style里面写上 display:-webkit-box;就行
<p>//办法2<br>
.class{<br>
overflow: hidden;<br>
text-overflow: ellipsis;<br>
-webkit-line-clamp: 2;<br>
/* autoprefixer: off <em>/     //对,就是加这两个注释就行。<br>
-webkit-box-orient: vertical;<br>
/</em> autoprefixer: on */<br>
display:-webkit-box;<br>
}<br>
</p>

不生效的原因。我也不清楚,网上说法也很多。这个英文话题,好像对原因做了 一些探讨,感兴趣的可以去看看。(https://github.com/postcss/au...

posted @   sfornt  阅读(856)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示