HTML是否支持文本呈现的行为,其中自动放置“...”将避免多行?抱歉,我找不到与此行为相关联的样式/标记(如果存在)!
答案 0 :(得分:5)
不,内置任何东西。
您需要自己在服务器端执行此操作,或者编写一些将计算行数的JavaScript并使用省略号(...
)替换行的其余部分。
CSS3规范中定义的text-overflow-mode
会执行此操作,但作为工作草案,它不是最终的,不一定适用于当前的浏览器。
答案 1 :(得分:3)
您正在寻找的属性是CSS text-overflow: ellipses
。不幸的是它在Firefox中不起作用。这是一个资源:
http://www.css3.info/preview/text-overflow/
你可以在Firefox中破解它,例如
http://www.jide.fr/english/emulate-text-overflowellipsis-in-firefox-with-css
但唯一真正的跨浏览器解决方案可能是JavaScript,也许就是这个,或者也许是本页评论中的一个:
http://ajaxian.com/archives/ellipsis-or-%E2%80%9Ctruncate-with-dots%E2%80%9D-via-javascript
答案 2 :(得分:1)
简短回答:不。
更长的答案:如果你使用的是向前端输出HTML的编程后端(例如PHP),这是可能的。你可以做点什么
<?php
if(str_len($yourText) > 100) {
echo substr($yourText, 0, 100) . "...";
}
?>