Spec-Zone.ru › CSS

Свойство CSS `unicode-bidi`

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

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

Свойство unicode-bidi CSS вместе со свойством direction определяет, как обрабатывается двунаправленный текст в документе. Например, если блок содержимого содержит текст, написанный как слева направо, так и справа налево, пользовательский агент использует сложный алгоритм Unicode, чтобы определить, как отображать текст. Свойство unicode-bidi переопределяет этот алгоритм и позволяет разработчику управлять встраиванием текста.

Попробуйте

unicode-bidi: normal;
unicode-bidi: bidi-override;
unicode-bidi: plaintext;
unicode-bidi: isolate-override;
<section class="default-example" id="default-example">
  <p class="transition-all" id="example-element">
    בְּרֵאשִׁ֖ית בָּרָ֣א אֱלֹהִ֑ים אֵ֥ת הַשָּׁמַ֖יִם וְאֵ֥ת הָאָֽרֶץ.
  </p>
</section>

Свойства unicode-bidi и direction — единственные свойства, на которые не влияет сокращённое свойство all.

Предупреждение: Это свойство предназначено для разработчиков определений типа документа (DTD). Веб-разработчикам и другим авторам не следует переопределять его.

Синтаксис

/* Keyword values */
unicode-bidi: normal;
unicode-bidi: embed;
unicode-bidi: isolate;
unicode-bidi: bidi-override;
unicode-bidi: isolate-override;
unicode-bidi: plaintext;

/* Global values */
unicode-bidi: inherit;
unicode-bidi: initial;
unicode-bidi: revert;
unicode-bidi: revert-layer;
unicode-bidi: unset;

Значения

normal
Элемент не создаёт дополнительный уровень встраивания относительно алгоритма двунаправленного текста. Для строчных элементов неявная перестановка выполняется через границы элементов.
embed
Если элемент является строчным, это значение создаёт дополнительный уровень встраивания относительно алгоритма двунаправленного текста. Направление этого уровня встраивания задаётся свойством direction.
bidi-override
Для строчных элементов это значение создаёт переопределение. Для блочных контейнеров оно создаёт переопределение для потомков строчного уровня, не находящихся внутри другого блочного контейнера. Это означает, что внутри элемента перестановка выполняется строго по порядку, заданному свойством direction; неявная часть алгоритма двунаправленного текста игнорируется.
isolate
Это ключевое слово указывает, что направление контейнера элемента следует вычислять, не учитывая содержимое этого элемента. Поэтому элемент изолирован от соседних элементов. При применении алгоритма разрешения двунаправленного текста его родительский элемент рассматривает его как один или несколько U+FFFC Object Replacement Character, то есть как изображение.
isolate-override
Это ключевое слово применяет поведение изоляции ключевого слова isolate к окружающему содержимому, а поведение переопределения ключевого слова bidi-override — к внутреннему содержимому.
plaintext
Это ключевое слово позволяет вычислять направление элементов, не учитывая состояние двунаправленного текста родительского элемента и значение свойства direction. Направление вычисляется с помощью правил P2 и P3 алгоритма двунаправленного текста Unicode. Это значение позволяет отображать данные, уже отформатированные с помощью инструмента, реализующего алгоритм двунаправленного текста Unicode.

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

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

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

unicode-bidi = 
  normal |
  embed |
  isolate |
  bidi-override |
  isolate-override |
  plaintext

Примеры

CSS

.bible-quote {
  direction: rtl;
  unicode-bidi: embed;
}

HTML

<div class="bible-quote">A line of text</div>
<div>Another line of text</div>

Результат

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

Спецификация
Режимы письма CSS, уровень 4
# unicode-bidi

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

Настольные Мобильные
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari на iOS Samsung Internet WebView для Android WebView на iOS
unicode-bidi
2
12
1
9.2
1.3
18
4
10.1
1
1.0
4.4
1
bidi-override
2
12
1
15
1.3
18
4
14
1
1.0
4.4
1
embed
2
12
1
15
1.3
18
4
14
1
1.0
4.4
1
isolate
48
16До Chrome 47 свойство -webkit-isolate могло привести к зависанию браузера.
Начиная с Chrome 19 допускается синтаксис из предыдущей версии спецификации, в которой ключевое слово isolate можно было использовать вместе с bidi-override.
79
79
50
10–54В Firefox с 10-й по 16-ю версию включительно ключевое слово isolate можно было использовать вместе с bidi-override — таков был синтаксис предыдущей версии спецификации. Начиная с Firefox 17 допускается только одно значение. Вместо предыдущего isolate bidi-override используйте isolate-override.
35
15До Opera 34 свойство -webkit-isolate могло привести к зависанию браузера.
Начиная с Opera 15 допускается синтаксис из предыдущей версии спецификации, в которой ключевое слово isolate можно было использовать вместе с bidi-override.
11
6До Safari 9 свойство -webkit-isolate могло привести к зависанию браузера.
48
50
10–54В Firefox для Android с 10-й по 16-ю версию включительно ключевое слово isolate можно было использовать вместе с bidi-override — таков был синтаксис предыдущей версии спецификации. Начиная с Firefox для Android 17 допускается только одно значение. Вместо предыдущего isolate bidi-override используйте isolate-override.
35
11
6До Safari на iOS 9 свойство -webkit-isolate могло привести к зависанию браузера.
5.0
48
11
6До WebView на iOS 9 свойство -webkit-isolate могло привести к зависанию браузера.
isolate-override
48
79
50
17–54
35
11
7
48
50
17–54
35
11
7
5.0
48
11
7
normal
2
12
1
15
1.3
18
4
14
1
1.0
4.4
1
plaintext
48
79
50
10–54До Firefox 50 значение plaintext игнорировалось при вертикальном режиме письма (ошибка 1302734).
До Firefox 15 свойство plaintext не оказывало никакого действия на строчный элемент. Спецификация изменилась, и реализация была обновлена в Firefox 15.
35
11
6
48
50
10–54До Firefox для Android 50 значение plaintext игнорировалось при вертикальном режиме письма (ошибка 1302734).
До Firefox для Android 15 свойство plaintext не оказывало никакого действия на строчный элемент. Спецификация изменилась, и реализация была обновлена в Firefox для Android 15.
35
11
6
5.0
48
11
6

См. также

  • direction
  • Атрибут unicode-bidi в SVG
  • Работа с текстом, имеющим разное направление

© 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/unicode-bidi

Spec-Zone.ru

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