:dir()

Baseline 2023
Newly available

Since December 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Die :dir() CSS Pseudoklasse selektiert Elemente basierend auf der Ausrichtung des Textes, der in ihnen enthalten ist.

css
/* Selects any element with right-to-left text */
:dir(rtl) {
  background-color: red;
}

Die :dir() Pseudoklasse verwendet nur den semantischen Wert der Ausrichtung, d.h. den im Dokument selbst definierten. Sie berücksichtigt nicht die stilistische Ausrichtung, also die Ausrichtung, die durch CSS-Eigenschaften wie direction festgelegt ist.

Hinweis: Beachten Sie, dass das Verhalten der :dir() Pseudoklasse nicht dem der [dir=…] Attributselektoren entspricht. Letztere selektieren das HTML-Attribut dir und ignorieren Elemente, die es nicht haben — selbst wenn sie eine Ausrichtung von ihrem übergeordneten Element erben. (Ebenso werden [dir=rtl] und [dir=ltr] nicht den Wert auto selektieren.) Im Gegensatz dazu wählt :dir() den vom User-Agent berechneten Wert aus, selbst wenn dieser geerbt wird.

Hinweis: In HTML wird die Richtung durch das Attribut dir bestimmt. Andere Dokumententypen können unterschiedliche Methoden haben.

Syntax

css
:dir([ltr | rtl]) {
  /* ... */
}

Parameter

Die :dir() Pseudoklasse erfordert einen Parameter, der die Textausrichtung repräsentiert, auf die Sie abzielen möchten.

ltr

Zielt auf links-nach-rechts Elemente ab.

rtl

Zielt auf rechts-nach-links Elemente ab.

Beispiele

HTML

html
<div dir="rtl">
  <span>test1</span>
  <div dir="ltr">
    test2
    <div dir="auto">עִבְרִית</div>
  </div>
</div>

CSS

css
:dir(ltr) {
  background-color: yellow;
}

:dir(rtl) {
  background-color: powderblue;
}

Ergebnis

Spezifikationen

Specification
HTML
# selector-ltr
HTML
# selector-rtl
Selectors Level 4
# dir-pseudo

Browser-Kompatibilität

Siehe auch