2010-05-17 39 views
2

我有一個字符串,必須放入一個框中,並且最長不得超過3行。爲了縮短它,我打算截斷它並以'...'結尾。我可以將它縮短到某個特定的字符數,但是如果我用「wwwwwwwww [www] wwww」使它看起來不錯,那麼它會與「iiiiiiiiiii iiii」看起來不正確。javascript/php - 縮小字符串以適合某行#

有沒有什麼方法可以縮短字符串佔用多少空間,而不是使用固定寬度字體的字符串中有多少字符?理想情況下,我想做到這一點的服務器端(PHP),但認識到,實際的字符寬度的東西更有可能是可行的客戶端(JS/jQuery的)

麻辣

PS。請不要「簡單地創建一個'...'的圖像,並將其覆蓋在行末」hacks或類似的 - 我實際上想要將字符串縮短到適當的長度

回答

2

對此,有imageftbboximagettfbbox

+0

非常有趣的解決方案 - 這甚至會工作的服務器端:)這是功能快捷關係嗎?我正在考慮必須每頁完成200次以上 – Mala 2010-05-17 23:55:16

+0

完美,謝謝!這看起來正是我想要的! – Mala 2010-05-18 00:03:16

+0

沒有理想。以此爲基準。 – Artefacto 2010-05-18 00:06:49

0

我無法想象如何輕鬆地獲得字體大小的程度,但可能會出現一種會以您想要的方式「出現」的黑客行爲。我想既然你提到三條線,我們在談論一個<textarea>元素:

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

雖然文本是存在的,它是不可見的,滾動條將不會顯示。

1

This site提供良好的方式爲已任,並且是跨瀏覽器。我喜歡簡單:

+0

這似乎與lazerscience的解決方案非常相似 - 儘管如此,謝謝:) – Mala 2010-05-18 00:02:32

+0

@Mala:當我發佈時沒有任何解決方案。 :) – Robusto 2010-05-18 00:26:40