Spec-Zone.ru › CSS

text-wrap

Базовая версия 2024

Новое

С марта 2024 года эта функция работает на последних версиях устройств и браузеров. Возможны проблемы с её работой на более старых устройствах или браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Свойство text-wrap CSS определяет, как текст внутри элемента будет обёрнут. Различные значения обеспечивают:

  • Улучшения в типографике, например, более сбалансированные длины строк в разбитых заголовках
  • Способ полностью отключить обёртку текста.

Примечание: Свойства white-space-collapse и text-wrap можно объявить вместе, используя сокращённое свойство white-space.

Попробовать

Составные свойства

Это свойство является сокращением для следующих свойств CSS:

  • text-wrap-mode
  • text-wrap-style

Синтаксис

/* Keyword values */
text-wrap: wrap;
text-wrap: nowrap;
text-wrap: balance;
text-wrap: pretty;
text-wrap: stable;

/* Global values */
text-wrap: inherit;
text-wrap: initial;
text-wrap: revert;
text-wrap: revert-layer;
text-wrap: unset;

Свойство text-wrap задаётся одним ключевым словом из списка значений ниже.

Значения

wrap

Текст обёртывается по строкам в подходящих символах (например, пробелы в языках, использующих разделители пробелов, как английский) для минимизации переполнения. Это значение по умолчанию.

nowrap

Текст не обёртывается на новые строки. Он переполнит свой контейнер, вместо того чтобы переходить на новую строку.

balance

Текст обёртывается таким образом, чтобы наилучшим образом сбалансировать количество символов в каждой строке, повышая качество макета и читабельность. Поскольку подсчёт символов и их балансировка по нескольким строкам является вычислительно затратным, это значение поддерживается только для блоков текста, занимающих ограниченное количество строк (не более шести для Chromium и не более десяти для Firefox).

pretty

Результатом является такое же поведение, как у wrap, за исключением того, что пользовательский агент будет использовать более медленный алгоритм, отдающий предпочтение лучшему макету над скоростью. Это предназначено для основного текста, где предпочтительнее хорошая типографика, чем производительность (например, когда количество одиночных слов должно быть минимальным).

stable

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

Описание

Существует 2 способа, как текст может переходить на новые строки внутри блока контента, например, абзаца (<p>) или заголовков (<h1>–<h6>). Это принудительные разрывы строк, которые контролируются пользователем, и мягкие разрывы строк, которые контролируются браузером. Свойство text-wrap можно использовать для указания браузеру, как управлять мягкими разрывами строк.

Выбираемое значение для text-wrap, зависит от того, сколько строк текста предполагается форматировать, является ли текст contenteditable, и необходимо ли отдавать приоритет внешнему виду или производительности.

Когда форматируемый контент будет ограничен коротким числом строк, например, заголовки, подписи и блоки цитат, text-wrap: balance можно добавить, чтобы сбалансировать количество символов в каждой строке, улучшая качество макета и читабельность. Поскольку браузеры ограничивают количество строк, на которые влияет это свойство, его влияние на производительность незначительно.

Для более длинных разделов текста можно использовать text-wrap: pretty. Обратите внимание, что pretty негативно сказывается на производительности, поэтому его следует использовать только для длинных блоков текста, когда макет важнее скорости.

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

Формальное определение

Начальное значение wrap
Применяется к текстовые и блочные контейнеры
Наследуется да
Вычисленное значение как каждое из свойств сокращения:
  • text-wrap-mode: как указано
  • text-wrap-style: как указано
Тип анимации как каждое из свойств сокращения:
  • text-wrap-mode: дискретный
  • text-wrap-style: дискретный

Формальный синтаксис

text-wrap = 
<'text-wrap-mode'> ||
<'text-wrap-style'>

<text-wrap-mode> =
wrap |
nowrap

<text-wrap-style> =
auto |
balance |
stable |
pretty |
avoid-orphans

Примеры

Сравнение значений базовой обёртки текста

HTML

<h2 class="wrap" contenteditable="true">
  The default behavior; the text in the heading wraps "normally"
</h2>

<h2 class="nowrap" contenteditable="true">
  In this case the text in the heading doesn't wrap, and overflows the container
</h2>

<h2 class="balance" contenteditable="true">
  In this case the text in the heading is nicely balanced across lines
</h2>

CSS

.wrap {
  text-wrap: wrap;
}

.nowrap {
  text-wrap: nowrap;
}

.balance {
  text-wrap: balance;
}

h2 {
  font-size: 2rem;
  font-family: sans-serif;
}

Результат

Текст в примере редактируется. Измените текст, добавив длинные слова, чтобы увидеть, как разные длины строк и слов влияют на обёртку.

Спецификации

Спецификация
CSS Text Module Level 4
# text-wrap

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari в IOS Samsung Internet WebView Android
text-wrap 114 114 121 100 17.4 114 121 76 17.4 23.0 114
balance 114 114 121 100 17.5 114 121 76 17.5 23.0 114
nowrap 114 114 124 100 17.4 114 124 76 17.4 23.0 114
pretty 117 117 Нет 103 Нет 117 Нет 78 Нет 24.0 117
stable Нет Нет 121 Нет 17.5 Нет 121 Нет 17.5 Нет Нет
wrap 114 114 124 100 17.4 114 124 76 17.4 23.0 114
END_OF_DOCUMENT_MARKER

См. также

  • white-space
  • white-space-collapse
  • Модуль CSS текста
  • CSS text-wrap: balance на developer.chrome.com
  • CSS text-wrap: pretty на developer.chrome.com

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/text-wrap

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API