资讯专栏INFORMATION COLUMN

CSS单行、多行文本溢出显示省略号

PiscesYE / 2279人阅读

摘要:单行文本溢出显示省略号需要对容器设置单行高度多行文本溢出显示省略号浏览器或移动端的页面在浏览器或移动端绝大部分是内核的浏览器可以直接使用的扩展属性是私有属性注意这是一个不规范的属性,它没有在的规范草案中用来限制在一个块元素显

单行文本溢出显示省略号

overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
(需要对容器设置单行高度)

多行文本溢出显示省略号

webkit浏览器或移动端的页面

   在webkit浏览器或移动端(绝大部分是webkit内核的浏览器)可以直接使用webkit的css扩展属性(webkit是私有属性)-webkit-line-clamp;
   注意:这是一个不规范的属性,它没有在CSS的规范草案中
   -webkit-line-clamp用来限制在一个块元素显示的文本行数,为了实现效果,他要与一下webkit属性结合使用:
       display:-webkit-box;(必须结合的属性,将对象作为弹性伸缩盒子模型展示)
       -webkit-box-orient(必须结合的属性,设置或检索伸缩盒对象的子元素的排列方式)

完整版写法如下:

overflow:hidden;
text-overflow:ellipsis;
display:-webkit-box;
-webkit-line-clamp:2; (两行文字)
-webkit-box-orient:vertical;
**跨浏览器兼容的方案**
比较靠谱简单的做法就是设置相对定位的容器高度,用包含省略号(...)的元素模拟实现
p{
position:relative;
line-height:1.4em;
/*设置容器高度为3倍行高就是显示3行*/
height:4.2em;
overflow:hidden;
}
p::after{
content:"...";
font-weight:bold;
position:absolute;
bottom:0;
right:0;
padding:0 20px 1px 45px;
background:#fff;
}

注意:IE6-7不显示content内容,所以要兼容IE6-7可以是在内容中加入一个标签,比如...去模拟;要支持IE8,需要将::after替换为:after

JavaScript解决方案

使用js也可以根据上面的思路去模拟,实现也很简单,推荐两个做类似工作的成熟小工具:
1、clamp.js
2、jQuery插件  jquery.dotdotdot
使用简单,实现方法自行百度

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/111956.html

相关文章

  • CSS实现单行多行文本溢出显示略号

    摘要:如果实现单行文本的溢出显示省略号同学们应该都知道用属性来,当然还需要加宽度属来兼容部分浏览。接下来重点说一说多行文本溢出显示省略号,如下。如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览。 实现方法: overflow: hidden; text-overflow:ellipsis; whit...

    番茄西红柿 评论0 收藏0
  • css实现单行多行文本超出显示略号

    摘要:前言项目中我们经常遇到这种需求,需要对单行多行文本超出显示为省略号。单行文本省略文本溢出显示省略号文本不会换行语法默认值适用于所有元素当对象内文本溢出时不显示省略标记,而是将溢出的部分裁切掉。 前言:项目中我们经常遇到这种需求,需要对单行、多行文本超出显示为省略号。这篇文章主要总结了小编解决此问题的方法,有不足之处欢迎大家指正。 单行文本省略 showImg(https://segme...

    wing324 评论0 收藏0
  • css实现单行多行文本超出显示略号

    摘要:前言项目中我们经常遇到这种需求,需要对单行多行文本超出显示为省略号。单行文本省略文本溢出显示省略号文本不会换行语法默认值适用于所有元素当对象内文本溢出时不显示省略标记,而是将溢出的部分裁切掉。 前言:项目中我们经常遇到这种需求,需要对单行、多行文本超出显示为省略号。这篇文章主要总结了小编解决此问题的方法,有不足之处欢迎大家指正。 单行文本省略 showImg(https://segme...

    paulquei 评论0 收藏0
  • css实现单行多行文本超出显示略号

    摘要:前言项目中我们经常遇到这种需求,需要对单行多行文本超出显示为省略号。单行文本省略文本溢出显示省略号文本不会换行语法默认值适用于所有元素当对象内文本溢出时不显示省略标记,而是将溢出的部分裁切掉。 前言:项目中我们经常遇到这种需求,需要对单行、多行文本超出显示为省略号。这篇文章主要总结了小编解决此问题的方法,有不足之处欢迎大家指正。 单行文本省略 showImg(https://segme...

    maxmin 评论0 收藏0

发表评论

0条评论

PiscesYE

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<