Однострочный текст HTML, с добавлением "...", если длиннее одной строки? - PullRequest
2 голосов
/ 07 сентября 2010

Поддерживает ли HTML поведение рендеринга текста, когда несколько строк будут исключены с автоматическим размещением "..."? Извините, я просто не могу найти стиль / тег, связанный с этим поведением, если он существует!

Ответы [ 3 ]

5 голосов
/ 07 сентября 2010

Нет, ничего не встроено.

Вам нужно либо сделать это самостоятельно на стороне сервера, либо написать какой-нибудь JavaScript, который будет считать строки и заменять остаток строки многоточием (...).

В спецификации CSS3 определено text-overflow-mode, которое будет делать это, но в качестве рабочего проекта оно не является окончательным и не обязательно будет работать в текущих браузерах.

3 голосов
/ 07 сентября 2010

Свойство, которое вы ищете, это 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

1 голос
/ 08 сентября 2010

Краткий ответ: Нет.

Более длинный ответ: это возможно, если вы используете программный бэкэнд (например, PHP), который выводит HTML на внешний интерфейс.Вы могли бы сделать что-то вроде

<?php
    if(str_len($yourText) > 100) {
        echo substr($yourText, 0, 100) . "...";
    }
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...