CSS UNICODE-BIDI

Text in some languages flows from right to left, while many other languages flow from left to right. There will inevitably be cases where left to right text and right to left content must be intermingled. Unicode allows for a complex process of determining the directional flow of content based on properties of the characters and content, as well as explicit controls for language “embeddings” and directional overrides. This algorithm should be used with bi-directional content as formatted by CSS. The ‘unicode-bidi’ and ‘direction’ properties specify how document content maps to the Unicode algorithm.

Example
1
2
3
4
div {
  unicode-bidi: embed;
  direction: rtl
}
1
<div style="unicode-bidi: embed; direction: rtl">Bidi content</div>

Possible Values

inherit: Explicitly sets the value of this property to that of the parent.

normal: The element will not open an additional level of embedding. In the case of inline elements, implicit Unicode character ordering will be applied across elements.

embed: Creates an additional explicit Unicode bidi embedding level, with the direction of the content specified by the ‘direction’ property. Implicit Unicode character ordering is also obeyed.

bidi-override: Creates an additional explicit Unicode bidi embedding level (like the “embed” value), with the direction of the content specified ONLY by the ‘direction’ property; ordering based on implicit Unicode character properties is not obeyed. This value literally overrides the normal Unicode ordering scheme.