CSS 2.1 · Eigenschaft
CSS-Eigenschaft direction
Vollreferenz zu direction: erlaubte Werte, Ausgangswert, Vererbung, Beispiel – und ein Regler, der zeigt, was die Eigenschaft tut.
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.
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
overflowundclip. - 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.