2

我有一个必须装进盒子的字符串,并且最多只能有 3 行长。为了缩短它,我计划截断它并以“...”结尾。我可以将它缩短到一定的字符数,但如果我用“wwwwwwwww [...] wwww”让它看起来不错,那么“iiiiiiiiiiii [...] iiii”看起来就不合适了。

有什么方法可以通过字符串占用多少空间来缩短它,而不是在不使用固定宽度字体的情况下字符串中有多少个字符?理想情况下,我想做这个服务器端(php),但认识到实际字符宽度的东西更可能是可行的客户端(JS / jQuery)

马拉

附言。请不要“简单地创建一个'...'的图像并将其覆盖在行尾”黑客或类似的 - 我实际上想将字符串缩短到适当的长度

4

5 回答 5

2

imageftbboximagettfbbox

于 2010-05-17T23:53:49.003 回答
2

看看这个:http ://www.switchonthecode.com/tutorials/javascript-tutorial-how-to-auto-ellipse-text

于 2010-05-17T23:55:16.787 回答
1

该站点提供了与任何方式一样好的方式,并且是跨浏览器的。我喜欢简单:

于 2010-05-17T23:56:25.100 回答
0

我想不出任何办法可以轻松地将字体大小调整到您所说的程度,但是可能会有一个 hack 会以您想要的方式“出现”。我假设既然你提到了三行,我们正在谈论一个<textarea>元素:

<textarea rows="3" cols="50" style="overflow:hidden;"></textarea>

虽然文本在那里,但它不可见,滚动条也不会显示。

于 2010-05-17T23:54:43.013 回答
0

为此有许多 jQuery 插件:http: //plugins.jquery.com/taxonomy/term/2229

于 2010-08-13T16:54:47.867 回答