まず、bdo
要素の属性 dir
と他の要素の違いを理解します。次のテキストがあるとします:
<bdo dir="rtl">Hello world!</bdo>
表示されるテキストのミラーリングされたバージョンは次のとおりです:
および <p dir="rtl">Hello world!</bdo>
は通常どおりアラビア語テキストを表示します:
なぜ bdo 要素が存在するのでしょうか? MDN のユースケースを確認しましたが、見つかりませんでした。この例は、これが実際のアプリケーションでは役に立たないことを示しています。通常の RTL 言語として扱われるミラー テキストはありますか?それとも、この要素には別の使用例があるのでしょうか?
UPD: W3C メンバーのツイートも見つけました:
推奨される BDO は常に間違っています。
これは、テキストがアラビア語、ヘブライ語、ペルシャ語などの右から左に書かれる言語 (RTL) であり、Web ページ上に正しく表示される必要がある場合に便利です。
たとえば、英語のテキストの後にアラビア語の引用符が続く Web ページがあるとします。 bdo 要素を使用しないと、アラビア語の引用符が英語のテキストと同じ方向に表示されますが、これは正しくありません。 bdo 要素を「rtl」属性とともに使用すると、アラビア語テキストが右から左に正しく表示されるようになります。