Erstens verstehe ich den Unterschied zwischen bdo
元素的属性 dir
und jedem anderen Element. Wenn wir den folgenden Text haben:
Hello world!
<bdo dir="rtl">Hello world!</bdo>
Eine gespiegelte Version des angezeigten Textes ist:
!dlrow ,olleH
und <p dir="rtl">Hello world!</bdo>
zeigen wie gewohnt arabischen Text an:
!Hello, world
Warum gibt es das BDO-Element? Ich habe die Anwendungsfälle von MDN überprüft, aber keine gefunden. Dieses Beispiel zeigt, dass mir dies in jeder realen Anwendung nutzlos erscheint. Gibt es Spiegeltexte, die als normale RTL-Sprachen behandelt werden? Oder gibt es einen anderen Anwendungsfall für dieses Element?
UPD: Ich habe sogar einen Tweet von einem W3C-Mitglied gefunden:
Es ist immer falsch, BDO zu empfehlen.
当文本采用从右到左 (RTL) 书写的语言(例如阿拉伯语、希伯来语或波斯语)并且需要在网页上正确显示时,这非常有用。
例如,假设您有一个网页,其中包含一些英文文本,后跟阿拉伯语引用。如果不使用 bdo 元素,阿拉伯语引号将以与英语文本相同的方向显示,这是不正确的。通过使用带有“rtl”属性的 bdo 元素,可以确保阿拉伯文本从右到左正确显示。