最近@子凡 在做泪雪博客的新版本,作为一个追求极致的人,所以很多细节都想要做得更好,也是更好的带来用户体验。然后超过三行的字符用省略号显示,之前一直就使用的是单行溢出显示省略号,这次还真的是遇到点问题,所以就 Google 了一下。
先看看单行文本溢出显示省略号的 CSS 写法:
1 2 3 4 5 6 7 8 9 | /*单行文本溢出显示省略号的CSS写法*/ .demo{ width: 150px; height: 25px; line-height: 25px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } |
上面的代码是早就有的标准单行文本溢出省略号的写法,在非常多的场景下我相信大家都可能使用过这种写法。
多行的显示该如何解决呢,后面经过查找后,chrome 的一个 API 可以解决上面提到的需求-webkit-line-clamp,可惜这个 API 居然目前只有 chrome 才能支持,而且并没有列入 W3C 的标准范凑内,也就是日后这个功能也只能是在 chrome 下才能用,这实在太可惜了,不过现在的移动端都是用的 webkit 的内核,所以可以放心的使用上面的 API,至于是 PC 端的话,子凡觉得依然可以做,只是需要看用户使用什么浏览器了,所以就算是 PC 端,子凡这次还是任性的这样做。
1 2 3 4 5 6 7 8 9 | /*多行文本溢出显示省略号的CSS写法*/ .demo{ width:150px; overflow : hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2;/*行数*/ -webkit-box-orient: vertical; } |
如果大家还有什么更好的解决方案,欢迎留言交流!
期待完美的方案