资讯专栏INFORMATION COLUMN

多行文本溢出时出现省略号

王伟廷 / 1808人阅读

摘要:多行文本溢出时出现省略号本文推荐种方法。溢出时不显示溢出的内容发生溢出时使用省略号代替浏览器的私有属性。显示指定的文本。显示多少行块级元素。默认显示的替代文本延迟多长时间后执行是否有窗口大小改变时执行默认操作具有这个类的元素。

多行文本溢出时出现省略号

本文推荐2种方法。

1. css

tip:只兼容chrome内核的浏览器。ff不支持。

.box {
    overflow: hidden; /* 溢出时不显示溢出的内容 */
    text-overflow: ellipsis; /* 发生溢出时使用省略号代替 */
    display: -webkit-box; /* chrome浏览器的私有属性。显示为box。 */
    -webkit-box-orient: vertical; /* 垂直排列元素 */
    -webkit-line-clamp: 2; /* 显示多少行 */
}
延展

word-wrap

关键字 描述 默认值
word-wrap 规定单词换行的条件 normal, 在单词断字点处换行。 break-word,在单词内换行。
overflow-wrap,在css3时由word-wrap改为overflow-wrap

text-overflow

关键字 描述 默认值
test-overflow 超出盒子的文本如何显示 clip, 修剪文本。 ellipsis, 显示省略号。 string, 显示指定的文本。

white-space

关键字 描述 默认值
white-space 对待空白的方法和是否换行 normal,空白会被浏览器忽略。 pre, 保留空白。nowrap, 文本不换行。pre-wrap, 保留空白,正常换行。pre-line,合并空白,保留换行。

box-orient

这个属性还没有被浏览器支持。需要使用各自浏览器的私有属性。

关键字 描述 默认值
box-orient 子元素如何排序 inline-axis,子元素沿着内联坐标轴(映射到横向)。 horizontal, 指定子元素在一个水平线上从左到右排列。vertical, 从顶部向底部垂直排列子元素。block-axis, 子元素沿着块坐标轴(映射到垂直)。inherit,继承父元素。

line-clamp

只有chrome内核的浏览器支持自己的私有属性。

显示多少行块级元素。

2. js

使用js控制溢出文本如何显示的方法有很多。这里推荐一个脚本文件:ellipsis.js

ellipsis.js
名称 链接
ellipsis 链接 https://www.jsdelivr.com/pack...
ellipsis https://cdn.jsdelivr.net/npm/...
ellipsis git https://github.com/glinford/e...
使用方法。

1、 引入脚本文件


2、 使用

var ell = Ellipsis({
    lines: 3
})
var ele = document.getElementsByClassName("test")
ell.add(ele)
延展

它还有一些配置项。若不配置则使用默认值。

{
    ellipsis: "...", // 默认显示的替代文本
    debounce: 0, // 延迟多长时间后执行
    responsive: true, // 是否有窗口大小改变时执行
    className: ".clamp", // 默认操作具有这个类的元素。
    lines: 2, // 默认只出现2行元素。
    portrait: null, // 默认不改变,如果你想要在竖屏模式下有不同的行数,
    break_word: true // 默认截断单词。
}

2018/06/12 by stone

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

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

相关文章

  • 【前端芝士树】纯CSS实多行文本溢出显示略号

    摘要:前端芝士树纯实现多行文本溢出显示省略号使用来控制行数由于用来限制在一个块元素显示的文本的行数这是一个不规范的属性,它没有出现在规范草案中,为了实现该效果,它需要组合其他外来的属性。 【前端芝士树】纯CSS实现多行文本溢出显示省略号 使用-webkit-line-clamp来控制行数 由于-webkit-line-clamp 用来限制在一个块元素显示的文本的行数,这是一个不规范的属性(u...

    CNZPH 评论0 收藏0
  • CSS实单行、多行文本溢出显示略号

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

    番茄西红柿 评论0 收藏0
  • 移动端的text-overflow多行文本溢出显示略号(…)

    摘要:大家应该都知道用属性来实现单行文本的溢出显示省略号。但是这个属性并不支持多行文本溢出显示省略号,这里根据应用场景介绍几个方法来实现这样的效果。,可以用来多行文本的情况下,用省略号隐藏超出范围的文本。 大家应该都知道用text-overflow:ellipsis属性来实现单行文本的溢出显示省略号(…)。当然部分浏览器还需要加宽度width属性。 overflow: hidden; te...

    thekingisalwaysluc 评论0 收藏0
  • 移动端的text-overflow多行文本溢出显示略号(…)

    摘要:大家应该都知道用属性来实现单行文本的溢出显示省略号。但是这个属性并不支持多行文本溢出显示省略号,这里根据应用场景介绍几个方法来实现这样的效果。,可以用来多行文本的情况下,用省略号隐藏超出范围的文本。 大家应该都知道用text-overflow:ellipsis属性来实现单行文本的溢出显示省略号(…)。当然部分浏览器还需要加宽度width属性。 overflow: hidden; te...

    WilsonLiu95 评论0 收藏0
  • 移动端的text-overflow多行文本溢出显示略号(…)

    摘要:大家应该都知道用属性来实现单行文本的溢出显示省略号。但是这个属性并不支持多行文本溢出显示省略号,这里根据应用场景介绍几个方法来实现这样的效果。,可以用来多行文本的情况下,用省略号隐藏超出范围的文本。 大家应该都知道用text-overflow:ellipsis属性来实现单行文本的溢出显示省略号(…)。当然部分浏览器还需要加宽度width属性。 overflow: hidden; te...

    JerryWangSAP 评论0 收藏0

发表评论

0条评论

王伟廷

|高级讲师

TA的文章

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