多行文本溢出时出现省略号
本文推荐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
关键字
描述
默认值
值
text-overflow
关键字
描述
默认值
值
white-space
关键字
描述
默认值
值
box-orient
这个属性还没有被浏览器支持。需要使用各自浏览器的私有属性。
关键字
描述
默认值
值
line-clamp
只有chrome内核的浏览器支持自己的私有属性。
显示多少行块级元素。
2. js
使用js控制溢出文本如何显示的方法有很多。这里推荐一个脚本文件:ellipsis.js
ellipsis.js
名称
链接
使用方法。
1、 引入脚本文件
<script src="https://cdn.jsdelivr.net/npm/ellipsis.js@0.1.3/ellipsis.js"></script>
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 // 默认截断单词。 }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。