获取更多博主的动态,欢迎加入我的 Telegram 频道:Fatesinger

纯CSS 多行文本溢出省略号

单行文本溢出省略号一般我们都知道实现方法。

.xxx {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

那么如果多行文本应该怎么做呢,伟大的chrome 又走在了时代前沿,可以使用-webkit-line-clamp这个属性来实现,这个属性已经有年头了,但是其他浏览器仍然不支持,一声叹息。

.xxx {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

-webkit-line-clamp 为行数,如果显示3行,则设置为3即可。

悲剧的是-webkit-line-clamp只有webkit 内核支持,于是我们要想办法解决这个问题,纯css 完美实现是不显示了,只能优雅降级,可以使用下面的方案,把最大高度设置为n倍行高,然后溢出部分隐藏即可。

.xxx {
    line-height: 1.2;
    max-height: 2.4em;
    overflow: hidden;
}

这样做的好处是可以忽略文本的长度,即使文本很短不会出现问题。如果确定文本是肯定溢出的,还可以使用::after 伪类来模拟…

大致代码

.xxx {
    line-height: 1.2;
    max-height: 2.4em;
    overflow: hidden;
    position: relative;
}
.xxx:after {
    content:"...";
    position:absolute;
    bottom: 0;
    right: 0;
    background-color: #fff;
}

考虑到文本不一定会溢出,最终的解决方案推荐

.xxx {
    line-height: 1.2;
    max-height: 2.4em;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

全文完。

Responses

  1. 大雄的头像

    我一定是沙发了~ :razz:

  2. 从良未遂的头像

    文章技术性太强,差评。祝你爸比生日快乐 :twisted:

  3. 猪不乐意的头像

    这个好哎,经常能碰到多行省略的情况,碰到这种问题一般都是跟设计师怼回去了。。。

  4. 红领巾的头像

    我来排个队形而已 :grin: :grin: :grin:

  5. BanYuner的头像

    谷歌总是走在最前端,根据目前国内浏览器的情况,基于webkit的还是很多的,希望以后普及吧

  6. Ray的头像

    display:table好像也可以

  7. chencool的头像

    纯技术文章~ :idea:

  8. 乐范儿的头像

    我也来排个队形而已 :neutral: :neutral:

  9. 何先生的头像

    赶紧收藏。

  10. kam的头像

    这个很有用 :neutral:

  11. 胸口碎大石的头像

    这个可以有,虽然看不懂。 :twisted:

  12. 商学院的头像

    看着好复杂

  13. adomit的头像

    强烈建议文章阅读界面,让用户可以选择是否显示还是隐藏sidebar,来自强迫症阅读者的建议 :twisted:

  14. adomit的头像

    侧边栏对于专注阅读文章主体,容易造成视觉污染啊~

    1. bigfa的头像

      @adomit 然而你见过几个网站只有内容的 :roll:

    2. adomit的头像

      @bigfa 广告居多,其他内容一般也没有太大作用。

  15. 苏醒的头像

    这个确实好用方便很多。。特别是对手机端

  16. 郑永的头像

    平行世界让我想起 源代码 电影。。。

发表留言

人生在世,错别字在所难免,无需纠正。

:mrgreen::neutral::twisted::arrow::shock::smile::???::cool::evil::grin::idea::oops::razz::roll::wink::cry::eek::lol::mad::sad::!::?: Smilies powered by wp-alu

Post Comment
More Stories

2013 – 2014 跨年博客

December 31, 2013

梭子蟹

September 20, 2022

退税

April 3, 2020