Свойство CSS line-break определяет, насколько строго должны применяться правила переноса текста на новые строки, особенно при работе с символами и знаками препинания в китайских, японских или корейских (CJK) системах письма. Он включен в спецификацию CSS Text Module Level 3, которая в настоящее время находится в редакции. Синтаксис свойства:
.element {
line-break: strict;
}
Значения, которые может принимать свойство:
- auto: позволяет браузеру решить, как он реализует разрывы строк. Каждый браузер может различаться по своим критериям, основанным на факторах, включая длину строки.
- normal: разбивает строки текста на основе «наиболее распространенного» набора правил.
- loose: применяется самое простое соблюдение правил разрыва строки. Это обычно короткие строки текста.
- strict: применяется самый строгий набор правил для разрывов строк.
- anywhere: значение включает возможности мягкого переноса , которые позволяют тексту разрываться по пробелам или знакам препинания, а не только по границе слова. Он идеально подходит для языков, в которых для разделения слов могут не использоваться пробелы или знаки препинания.
Поведение для разных языков
Разные языки имеют разные предпочтения, когда речь идет о том, как текст разбивается на новые строки. Не существует стандартного соглашения, используемого всеми языками. Это оставляет за браузерами возможность выяснить и следовать «правильным» правилам для конкретного языка. Но спецификация содержит несколько требований для определения того, разрешен ли разрыв строки на разных уровнях строгости в определенных ситуациях.
Ситуация | normal | loose | strict |
Разрывы перед японской маленькой каной или удлиненным звуковым знаком Катакана-Хирагана, т.е. символом из класса перевода строки Unicode CJ | ✘ | ✔ | ✔ |
Разрывы перед некоторыми символами дефиса CJK: 〜 U+301C, ゠ U+30A0 |
✘ | ✔ если система письма китайская или японская | Разрешено, если система письма китайская или японская |
Разрывы перед метками итерации: 々 U+3005, 〻 U+303B, ゝ U+309D, ゞ U+309E, ヽ U+30FD, ヾ U+30FE |
✘ | ✔ | ✘ |
Разрывы между неразделимыми символами (например, ‥ U+2025, … U+2026), т. е. символы из класса разрыва строки Unicode IN | ✘ | ✔ | ✘ |
Разрывы перед определенными центрированными знаками препинания: ・ U+30FB, : U+FF1A, ; U+FF1B, ・ U+FF65, ‼ U+203C, ⁇ U+2047, ⁈ U+2048, ⁉ U+2049, ! U+ FF01, ? U+FF1F |
✘ | ✔ | ✘ |
Разрывы перед суффиксами: символы с классом разрыва строки Unicode PO и свойством ширины Ambiguous, Fullwidth или Wide. | ✘ | ✔ | ✘ |
Разрывы после префиксов: символы с классом разрыва строки Unicode PR и свойством ширины Ambiguous, Fullwidth или Wide. | ✘ | ✔ | ✘ |
Комментарии (0)