Foren / National / Russian / Тех. поддержка / Запросы документации

Принимаем вопросы от населения

Argont
#47114 26. September 2023, 22:41
#47113 Kabak:

Как гораничить количество символов в строке с помощью CSS ?

конечно я и сам прибегаю к не стандартным решениям, но зачем через каскадные стили таблиц?

в котонти делается все просто, если НЕ лезть в движок:

карточка статьи page.tpl

{PAGE_TEXT|cot_string_truncate($this, '180')} // 180 символов
{PAGE_SHORTTITLE|cot_string_truncate($this, '18')} // 18 символов
{PAGE_DESC|cot_string_truncate($this, '24')} // 24 символа

списки статей page.list.tpl

{LIST_ROW_TEXT|cot_string_truncate($this, '180')} // 180 символов
{LIST_ROW_SHORTTITLE|cot_string_truncate($this, '18')} // 18 символов
{LIST_ROW_DESC|cot_string_truncate($this, '24')} // 24 символа

 

можно и truncate через js, но тут от конкретной задачи...

 

Добавлено 22 минуты спустя:

#46876 Kabak:

выглядит не очень, потому , что получается разный размер текста, а именно где-то две строки, а где-то три строки, но да общее количество символов не превышает указанное мной значение.

что бы не было разного размера текста, лишаем его тегов, задающих ему форматирование, таких как <p>, <br>, <span>, <b>, <strong>, <blockquote> и .д.

другими словами, получаем чистый текст с колонки "page_text", из таблицы "prefix_pages" нашей БД.

{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}

примечание: в данном случае, функция будет примененна к тому, что было набрано, например в визуальном редакторе CKEditor. Но если, вышеуказанную конструкцию поместить в HTML-блок, - стили этого блока будут унаследованны, как и HTML-теги. например

<div class="name-class-css">
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</div>

<div class="name-class-css">
  <span class="other-class-css">
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
  </span>
</div>

<H1>
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</H1>

<p>
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</p>

тут функция унаследует нагрузку тегов, внутри которых помещенна, но сам "page_text" будет лишен таких тегов (<p>, <h3>, <br>, <small>, <span>, <u>, <sup>, <b>, <strong>, <blockquote> итд) и уже таким образом регулируем для себя количеством символов на 2 строки, на три, как нравится больше ))

 

Добавлено 1 минута спустя:

и что с того, что это реализуем через функции php?

экспертное мнение с нумерованным списком недостатков такого решения будет? ))

иногда поржать над задравшим подбородок разработчиком

Dieser Beitrag wurde von Argont (am 27. September 2023, 00:53, vor 1 Jahr) bearbeitet