Die Elemente bdi und bdo
Isolieren und überschreiben Sie die Textrichtung mit bdi und bdo
Die Elemente bdi und bdo ist eine kostenlose HTML Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des HTML Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.
Warum Bidi-Steuerelemente?
Der Unicode Bidirectional Algorithm verarbeitet Text mit gemischter Schreibrichtung normalerweise gut, aber manchmal müssen Sie ihn überschreiben – etwa um zu verhindern, dass ein vom Benutzer angegebener Name die Richtung des umgebenden Textes ändert, oder um in einem Codeblock eine bestimmte Richtung zu erzwingen.
Das bdi-Element
<bdi> (bidirektionale Isolation) behandelt seinen Inhalt als eigenen bidi-Kontext. Die Textrichtung innerhalb von <bdi> kann die Richtung außerhalb nicht beeinflussen und umgekehrt.
<p>User <bdi>{username}</bdi> posted at 12:34</p>Anwendungsfall: Benutzernamen
Eine Liste mit englischen und arabischen Namen birgt das Risiko, dass die arabischen Namen ihren RTL-Fluss in den umgebenden Text „übertragen“. Wenn Sie jeden Namen in <bdi> einschließen, wird er isoliert: Das Layout bleibt unabhängig davon konsistent, welche Richtung der jeweilige Name hat.
Das bdo-Element
<bdo dir="rtl"> (bidirektionale Überschreibung) erzwingt eine bestimmte Richtung für seinen Inhalt und überschreibt die natürliche Bidi-Auflösung. Verwenden Sie es, wenn Sie Text in einer nicht natürlichen Richtung anzeigen möchten – zum Beispiel, um Codeausschnitte innerhalb einer RTL-Seite in LTR darzustellen.
<bdo dir="ltr">someEnglishCode();</bdo>Unterschied zu dir
Das dir-Attribut bei einem normalen Element legt eine Grundrichtung fest, während der bidi-Algorithmus innerhalb des Elements weiterhin angewendet wird. <bdo> deaktiviert den bidi-Algorithmus für seinen Inhalt – jedes Zeichen fließt unabhängig von seinem Schriftsystem strikt in die angegebene Richtung.
Wann Sie bdi verwenden sollten
Immer wenn Sie von Benutzern erzeugten Text in umgebende Elemente der Benutzeroberfläche einbetten – etwa Namen in Chat-Kopfzeilen, Benutzernamen in Kommentaren oder Titel in Feed-Einträgen. Die Isolation stellt sicher, dass das Layout der Benutzeroberfläche nicht davon beeinflusst wird, was der Benutzer eingegeben hat.
Wann bdo verwendet wird
Selten. Der wichtigste legitime Anwendungsfall besteht darin, bidirektionalen Text zu erklären (also zu zeigen, wie eine Zeichenfolge umgekehrt aussieht) oder fehlerhaft ausgezeichnete Daten zu korrigieren, bei denen die natürliche Bidi-Auflösung zu einer falschen visuellen Reihenfolge führt.
Kombiniert mit dir="auto"
Bei Benutzerinhalten mit unbekannter Schreibrichtung kombinieren Sie <bdi dir="auto"> für doppelte Sicherheit: Die automatische Erkennung bestimmt anhand des Inhalts eine Grundrichtung, und bdi verhindert, dass diese Richtung in den umgebenden Text übergreift.
Browserunterstützung
bdi und bdo werden von allen modernen Browsern unterstützt. Sie sind Bestandteil von HTML5 und seit Jahren stabil. Ältere IE-Versionen unterstützen bdi nicht, sind aber funktional veraltet; moderne Websites können bdi problemlos verwenden.
Barrierefreiheit
Screenreader berücksichtigen die Bidi-Isolierung: Text innerhalb von <bdi> wird in seiner eigenen Sprachstimme ausgegeben (wenn lang gesetzt ist), ohne dass der umgebende Kontext einfließt. bdi hilft der Sprachausgabe außerdem dabei, passende Pausen um isolierte Ausdrücke zu erzeugen.
Gängiges Muster: i18n in Templates
Templates mit Platzhaltern ("Willkommen, {name}") sollten den Platzhalter in <bdi> einschließen: Welcome, <bdi>{name}</bdi>. Jeder Benutzername – ob englisch, arabisch oder gemischt – wird korrekt dargestellt, ohne den restlichen Begrüßungstext zu beeinflussen.
Wissensüberprüfung
Was ist der praktische Unterschied zwischen und ?
Zusammenfassung
bdi isoliert die Schreibrichtung eines Textabschnitts von seiner Umgebung – verwenden Sie es für eingebettete Benutzerinhalte wie Namen in Templates. bdo erzwingt eine bestimmte Richtung und überschreibt damit die Bidi-Auflösung; außerhalb von Lehrbeispielen wird es nur selten benötigt. Kombinieren Sie bdi mit dir="auto", um von Benutzern bereitgestellten Text in unbekannten Sprachen sicher zu verarbeiten.
Häufig gestellte Fragen
Ist die Lektion „Die Elemente bdi und bdo“ kostenlos?
Ja — der vollständige Text von „Die Elemente bdi und bdo“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des HTML Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Die Elemente bdi und bdo“?
Isolieren und überschreiben Sie die Textrichtung mit bdi und bdo Du übst HTML Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um HTML Academy zu starten?
Keine Vorkenntnisse erforderlich. HTML Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Die Elemente bdi und bdo“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser HTML Academy-Lektion Code schreiben und ausführen?
Ja. Jede HTML Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Das lang-Attribut und Screenreader
- dir=rtl für Text von rechts nach links
- Die Elemente bdi und bdo
- charset und Unicode: Sonderzeichen verarbeiten