Spec-Zone.ru › CSS

CSS-свойство `overflow-wrap`

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она поддерживается браузерами с октября 2018 года.

Свойство overflow-wrap CSS применяется к тексту и задаёт, должен ли браузер вставлять переносы строк внутри строки, которую иначе нельзя разбить, чтобы предотвратить выход текста за пределы строчного блока.

Примечание: Изначально это свойство было нестандартным расширением Microsoft без префикса под названием word-wrap; большинство браузеров реализовали его под тем же названием. Позже оно было переименовано в overflow-wrap, а word-wrap стало его псевдонимом.

Попробуйте

overflow-wrap: normal;
overflow-wrap: anywhere;
overflow-wrap: break-word;
<section class="default-example" id="default-example">
  <div class="example-container">
    Most words are short &amp; don't need to break. But
    <strong class="transition-all" id="example-element"
      >Antidisestablishmentarianism</strong
    >
    is long. The width is set to min-content, with a max-width of 11em.
  </div>
</section>
.example-container {
  background-color: rgb(255 0 200 / 0.2);
  border: 3px solid rebeccapurple;
  padding: 0.75em;
  width: min-content;
  max-width: 11em;
  height: 200px;
}

Примечание: В отличие от word-break, overflow-wrap создаёт перенос, только если целое слово невозможно разместить на отдельной строке без переполнения.

Синтаксис

/* Keyword values */
overflow-wrap: normal;
overflow-wrap: break-word;
overflow-wrap: anywhere;

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

Значения

Это свойство задаётся одним из следующих ключевых слов:

normal
Переносы строк допускаются только в обычных местах переноса слов (например, на пробеле между двумя словами).
anywhere
Чтобы предотвратить переполнение, строку символов, которую иначе нельзя разбить, — например, длинное слово или URL-адрес, — можно разбить в любом месте, если в строке нет других допустимых мест переноса. В месте переноса дефис не вставляется. Возможности мягкого переноса, создаваемые разрывом слова, учитываются при вычислении внутренних размеров min-content.
break-word
То же, что и значение anywhere: слова, которые обычно нельзя разбить, разрешается разбивать в произвольных местах, если в строке нет других допустимых мест переноса, однако возможности мягкого переноса, создаваемые разрывом слова, НЕ учитываются при вычислении внутренних размеров min-content.

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

Начальное значение normal
Применяется к текстовым элементам
Наследуется да
Вычисленное значение как задано
Тип анимации дискретный

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

overflow-wrap = 
  normal |
  break-word |
  anywhere

Примеры

Сравнение overflow-wrap, word-break и hyphens

В этом примере сравниваются результаты применения overflow-wrap, word-break и hyphens при разрыве длинного слова.

HTML

<p>
  They say the fishing is excellent at Lake
  <em class="normal">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>, though
  I've never been there myself. (<code>normal</code>)
</p>
<p>
  They say the fishing is excellent at Lake
  <em class="ow-anywhere">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>,
  though I've never been there myself. (<code>overflow-wrap: anywhere</code>)
</p>
<p>
  They say the fishing is excellent at Lake
  <em class="ow-break-word">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>,
  though I've never been there myself. (<code>overflow-wrap: break-word</code>)
</p>
<p>
  They say the fishing is excellent at Lake
  <em class="word-break">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>,
  though I've never been there myself. (<code>word-break</code>)
</p>
<p>
  They say the fishing is excellent at Lake
  <em class="hyphens">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>, though
  I've never been there myself. (<code>hyphens</code>, without
  <code>lang</code> attribute)
</p>
<p lang="en">
  They say the fishing is excellent at Lake
  <em class="hyphens">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>, though
  I've never been there myself. (<code>hyphens</code>, English rules)
</p>
<p class="hyphens" lang="de">
  They say the fishing is excellent at Lake
  <em class="hyphens">Chargoggagoggmanchauggagoggchaubunagungamaugg</em>, though
  I've never been there myself. (<code>hyphens</code>, German rules)
</p>

CSS

p {
  width: 13em;
  margin: 2px;
  background: gold;
}

.ow-anywhere {
  overflow-wrap: anywhere;
}

.ow-break-word {
  overflow-wrap: break-word;
}

.word-break {
  word-break: break-all;
}

.hyphens {
  hyphens: auto;
}

Результат

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

Спецификация
Модуль текста CSS, уровень 3
# overflow-wrap-property

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

Настольные компьютеры Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari на iOS Samsung Internet WebView для Android WebView на iOS
overflow-wrap
23
1
18
12
49
3.5
12.1
10.5
7
1
25
18
49
4
12.1
11
7
1
1.5
1.0
4.4
1
7
1
anywhere
80
80
65
67
15.4
80
65
57
15.4
13.0
80
15.4
break-word
1
12
3.5
10.5
1
18
4
11
1
1.0
4.4
1
normal
1
12
3.5
15
1
18
4
14
1
1.0
4.4
1

См. также

  • word-break
  • white-space
  • hyphens
  • text-overflow
  • Руководство по переносу и разрыву текста

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

Spec-Zone.ru

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