The StyleWorksCSS { Referenz · Labor · Übungen }
  1. Startseite
  2. Referenz
  3. direction

CSS 2.1 · Eigenschaft

CSS-Eigenschaft direction

Vollreferenz zu direction: erlaubte Werte, Ausgangswert, Vererbung, Beispiel – und ein Regler, der zeigt, was die Eigenschaft tut.

Erstveröffentlichung Lesezeit 3 min
stylesheet.css · direction
.probe {
  direction: rtl;
}

Der Webautor schreibt einen Absatz, der Browser setzt ihn nach den Regeln des Stylesheets. Groß- und Kleinschreibung, Abstand, Farbe und Schnitt hängen an genau einer Eigenschaft.

berechneter Wertdirection: rtl
Box-Breite–
Box-Höhe–

Erläuterungen

Diese Eigenschaft legt die grundsätzliche Schreibrichtung in Elementen fest. Sie hat darüber hinaus noch weitere Wirkungen:

  • Innerhalb der Reihen von Tabellen erfolgt die Darstellung der einzelnen Zellen in der Reihenfolge der definierten Schreibrichtung, nicht grundsätzlich von links nach rechts. Dadurch wird es auch unmöglich, multilinguale Websites im Tabellenlayout zu erstellen.
  • Berechnung der horizontalen Werte in den Eigenschaften overflow und clip.
  • Position der letzten Zeile eines Absatzes im Falle von text-align:justify.
  • Richtung für Einfügungen und Überschreibungen der Eigenschaft Unicode- bidi.
  • Horizontale Positionierung eines Blocks, wenn die Angaben zu Breite und horizontalen Abständen über- oder unterbestimmt sind.

Die Eigenschaft direction ersetzt das HTML-Attribut dir.

Erlaubte Werte

Auszug aus der Spezifikation (die verwendete Syntax wird im Artikel CSS-Wertesyntax genauer erläutert):

'direction'
ltr | rtl | inherit
ltr (Ausgangswert)
Schreibrichtung von links nach rechts
rtl
Schreibrichtung von rechts nach links
inherit
Bestimmt explizit, dass diese Eigenschaft denselben berechneten Wert wie im Elternelement annimmt.

Code-Beispiel

P.hebrew { direktion:rtl; }

Browserunterstützung

Die Eigenschaft direction wird von allen modernen Browsern unterstützt, mit einer Ausnahme:

IE/Mac 5
IE/Mac unterstützt diese Eigenschaft nicht.

Eric Meyer's CSS2 Test Suite zeigt am praktischen Beispiel, wie die Browser mit dieser Eigenschaft umgehen.

Keine Eigenschaft und kein Selektor stehen in einem Stylesheet für sich allein. In der Praxis kann das Zusammenspiel zwischen verschiedenen Elementen und Selektoren einen nicht zu unterschätzenden Einfluss auf die Fähigkeiten der Browser haben. Bugs treten oft erst durch das Zusammenwirken mehrerer Eigenschaften an unterschiedlichen Elementen auf.

Wechselwirkungen

:lang(),
clip, overflow, text-align, unicode-bidi

Mehr als die Richtung des Textes

Die Eigenschaft dreht nicht nur die Leserichtung innerhalb einer Zeile. Sie legt die Grundrichtung für den Block fest, und daran hängen mehrere Dinge, die auf den ersten Blick nichts miteinander zu tun haben.

In Tabellen kehrt sich die Reihenfolge der Spalten um: die erste Zelle einer Zeile steht rechts. Bei Listen wechselt die Marke auf die andere Seite. Der Einzug der ersten Zeile greift auf der anderen Seite, und die Ausrichtung des Textes auf den Anfang der Zeile bedeutet in der einen Richtung links, in der anderen rechts.

Die Seite zieht daraus eine Folgerung, die für ihre Entstehungszeit weitreichend war: ein Layout, das mit Tabellen gebaut ist, lässt sich nicht in beide Richtungen benutzen, weil die Anordnung der Zellen an der Schreibrichtung hängt und nicht an der Gestaltung.

Der Ausgangswert ist die Schreibrichtung von links nach rechts. Das ist keine Aussage über Sprachen, sondern eine Festlegung, die getroffen werden musste; für Dokumente in einer Sprache mit umgekehrter Richtung wird sie am Wurzelelement geändert.

Vom Sonderfall zur Grundlage

In CSS 2.1 ist die Schreibrichtung ein Zusatz zu einem Layoutmodell, das von links nach rechts denkt. Alles andere, die Außenabstände, die Innenabstände, die Positionierung, ist über links und rechts benannt und dreht sich nicht mit.

Wer damals ein Dokument in beide Richtungen anbieten wollte, brauchte deshalb ein zweites Stylesheet, in dem alle seitenbezogenen Angaben vertauscht waren. Das ist fehleranfällig, weil jede spätere Änderung an zwei Stellen nachgezogen werden muss.

Die spätere Entwicklung hat diesen Zusammenhang umgekehrt. Es gibt heute für Abstände, Ränder und Maße Entsprechungen, die nicht von links und rechts sprechen, sondern von Anfang und Ende der Zeile. Ein Stylesheet, das durchgehend so geschrieben ist, funktioniert in beiden Richtungen, und die Eigenschaft dieser Seite ist der Schalter, der darüber entscheidet.

Für die Auszeichnung gilt dabei eine Arbeitsteilung, die leicht übersehen wird. Die Schreibrichtung eines Textabschnitts gehört ins Dokument, weil sie zum Inhalt gehört und auch ohne Stylesheet stimmen muss. Die Eigenschaft dieser Seite ist der Weg, dieselbe Angabe im Stylesheet auszudrücken, und ist für den Fall gedacht, dass sich beides nicht trennen lässt.

Besonderheiten im Medientyp handheld

Diese Eigenschaft ist nicht Teil des Standards CSS Mobile Profile 1.0. Mobilgeräte, deren Browser diese Eigenschaft umsetzen, sind bisher nicht bekannt.

Weitere Charakteristika

Die Stylesheet-Schnellreferenz mit einer Zusammenfassung aller visuellen Eigenschaften kann auch als PDF-Datei herunter geladen werden.

Ausgangswert
ltr
Berechneter Wert
Spezifizierter Wert
Vererbung
Ja
Anwendbarkeit
Auf alle Elemente
%-Bezugswert
Nicht zutreffend
Mediengruppe(n)
Visual

Verwendete Standards

Dieser CSS-Referenz liegen folgende Spezifikationen zugrunde: CSS 1, CSS 2.1 CR und CSS Mobile.