这家伙:https://stackoverflow.com/a/7239020/2453678在这里发布了一个很好的答案:http://jsfiddle.net/imoda/REs2Q/
基本上,如果你想要一个优雅的解决方案,计算字符数是不可能的,因为每个字母都有不同的权重。
问题是:
span {
display: inline-block;
border: black 1px solid;
width: 200px;
height: 40px;
overflow: hidden;
}
如何修改上面的代码,所以最后,如果字符串被缩短,三个'。'是吗?
答案 0 :(得分:1)
我在PHP中编写了一个简单的函数。
function limit_text($input, $n){
$array = preg_split('~\R+~', $input); // Split by newline(s)
$array = array_slice($array, 0, $n); // Get the first n parts
$output = implode('<br>', $array) . '...'; // Implode and add some dots
return $output;
}
以下是您如何使用它:
$str = 'span {
display: inline-block;
border: black 1px solid;
width: 200px;
height: 40px;
overflow: hidden;
}';
echo '<pre>' . limit_text($str, 2); . '</pre>';