CSS 实现文本“不定行数“截断

  • Post author:
  • Post category:其他


偶然发现,在某乎热榜页有一个很有意思的布局,这里的标题会制约内容的行数,所以文本超出是”不定行”的。详细规则如下:

  1. 整个容器高度是固定的,标题和内容总共 3 行
  2. 标题最多2行,超出省略
  3. 内容由剩余空间决定,如果标题占2行,则内容超出1行省略;如果标题占1行,则内容超出2行省略

是不是很灵(离)活(谱)的交互?可以充分利用页面空间,保证标题和内容都能展示出来

看了下原站的实现,是通过 js 判断标题高度,然后动态添加一个类名实现的。不过呢,经过一番琢磨,这里也是可以纯 CSS 实现的,一起来看看吧

一、标题超出省略

假设有这样一段 HTML

<div class="section">
    <h3 class="title">LGD 在 TI10 放猛犸,RNG 在 S7 放加里奥最后都输了,哪个更让你愤怒失望?</h3>
    <p class="excerpt">猛犸是对面的绝中绝,大家都知道,并且之前扳回两局已经证明了,当lgd选择ban掉猛犸,或者自己抢掉猛犸时,对面完全不是对手。</p>
</div>

标题的规则是超出2行省略,这个简单,直接用

-webkit-line-clamp

实现

.title{
    overflow: hidden;
    display: -we



版权声明:本文为weixin_41996102原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。