Страницы

Поиск по вопросам

воскресенье, 26 января 2020 г.

Поставить троеточие в не вместившейся в поле текст

#php #html #css #текст


На многих сайтах видно, что невместившейся текст обрезается, ставится троеточие и
ссылка "подробнее".

В CSS нашел свойство text-overflow, но оно обрезает сразу на первой строке.
Как добиться того, чтобы текст обрезался на 3 или 4 строке допустим?
    


Ответы

Ответ 1



с помощью PHP можно делать вот так к примеру: $text = "Допустим здесь ваш текст из 1000 символов"; $text = mb_substr($text,0,140, 'UTF-8'); //140 это кол. знаков echo $text.'...'; Это самый простой пример { $text1 = "Допустим здесь ваш текст из 1000 символов"; $text = mb_substr($text1,0,140, 'UTF-8'); //140 это кол. знаков $str_count = substr_count($text," "); // возвращает количество пробелов $text = explode(" ", $text1); //количество слов for($i=0;$i<$str_count; $i++){ echo $text[$i].' '; } echo "..."; }

Ответ 2



В PHP сколько функций для работы со строками, что вариантов можно скомбинировать множество. Например, мой такой: $raw = 'Строка на много символов...'; $string = substr($raw, 0, 140); // обрезаем первые 140 символов $end = strlen(strrchr($string, ' ')); // длина обрезка $string = substr($string, 0, -$end) . '...'; // убираем обрезок добавляем троеточие echo $string;

Ответ 3



Используйте этот код для PHP: mb_strimwidth("Hello World", 0, 10, "..."); Функция выведет Hello W...

Ответ 4



Это можно легко сделать средствами css. Если правильно ими воспользоваться) Держите

Ответ 5



Это делается скриптом php, где указывается количество видимых символов, а дальше троеточие

Ответ 6



text-overflow обрезает на первой строке т.к. у вас не указана высота блока в котором находится текст, попробуйте что-то вроде:
много много текста
Ну а правильнее и проще конечно сделать на php с помощью substr

Ответ 7



Вы просто разрушили все велосипеды... Функция mb_strimwidth режет "по живому". А функция выше на этой странице, режет по словам. Обернул в функцию, пример: $text1 = "Ассоциация участников рынка лакокрасочных материалов в поддержку качества краски– «Подходы к формированию рынка качественных и безопасных лакокрасочных материалов строительного назначения»"; function textTrim($str, $len) { $text = mb_substr($str,0, $len, 'UTF-8'); //140 это кол. знаков $str_count = substr_count($text," "); // возвращает количество пробелов $text = explode(" ", $str); //количество слов $out = ''; for($i=0;$i<$str_count; $i++){ $out .= $text[$i].' '; } $out .= "..."; return $out; } echo textTrim($text1, 70)."\n"; //Выведет: Ассоциация участников рынка лакокрасочных материалов в поддержку ... echo mb_strimwidth( $text1, 0, 70, "..."); //Выведет: Ассоциация участников рынка лакокрасочных материалов в поддержку ка...

Комментариев нет:

Отправить комментарий