【发布时间】:2011-07-18 12:36:35
【问题描述】:
我在Truncating long strings with CSS: feasible yet? 中提到了同样的问题。从那篇帖子到现在已经快两年了,Firefox 仍然忽略了text-overflow: ellipsis; 属性。
我目前的解决方案是像这样在 PHP 中截断长字符串:
if(strlen($some_string) > 30)
$some_string = substr($some_string,0,30)."...";
这或多或少有效,但在支持它的浏览器中,它看起来不如text-overflow: ellipsis; 好或准确。由于我没有使用等宽字体,因此三十个字符的实际宽度会有所不同。在另一个线程中发布的 XML 修复和 jQuery 插件似乎也不再适用于 Firefox。
目前有没有一种方法可以在独立于浏览器的 CSS 中做到这一点?如果没有,有没有办法在 PHP 中测量给定字体和字体大小的字符串的宽度,以便我可以更准确地放置省略号?
【问题讨论】: