CSS 2.1 · At-Regel
At-Regel @page
Vollreferenz zu @page aus CSS 1 und CSS 2.1 mit Syntax, Bedeutung, Beispiel und Browserunterstützung.
@pageAt-Regeln gelten für das ganze Stylesheet und haben kein einzelnes Element, an dem sich ein Regler drehen ließe. Das Code-Beispiel weiter unten zeigt die Syntax, der Abschnitt Erläuterungen die Wirkung.
Allgemeines
Paginierte bzw. seitenorientierte Medien, z. B. Druckseiten oder Overhead-Projektionen, unterscheiden sich von fortlaufenden Ausgabemedien, z. B. Bildschirme, dadurch, dass ihr Inhalt in Vierecke von vordefinierter Größe aufgeteilt ist. Dies wird besonders auffällig, wenn man sich druckeroptimierte Dateien, z. B. die Druckversion/-vorschau dieser Website, am Bildschirm ansieht.
Die Übertragung von theoretisch unendlich langen und breiten Webdokumenten in Vierecke mit begrenzter Größe wird von CSS in zwei Schritten bewerkstelligt:
- Die Seitenbox ('page box') ist eine Erweiterung des Box- Modells. Mit ihrer Hilfe ist es möglich, die Seitenvierecke und Seitenränder zu definieren.
- Das Seitenmodell ('page model') ist eine Erweiterung des Modells zur visuellen Formatierung. Hier sind alle Eigenschaften zur Seitenformatierung, Seitenumbrüche usw. zusammengefaßt.
Jedes Viereck stellt den für eine Druckseite vorgesehenen Inhalt dar. Dabei sind diese Vierecke zunächst einmal völlig unabhängig von einem bestimmten Papierformat. CSS 2.1 stellt lediglich einige Funktionen bereit, mit denen Anwenderprogramme über die gewünschte Papiergröße und -orientierung informiert werden.
Der darauf folgende Schritt, die Übertragung dieser Vierecke auf das Papier, liegt dann in der Verantwortung des Anwenderprogramms.
Die Regel @page
Innerhalb des Regelblocks einer @page-Regel lassen sich alle Definitionen für einen bestimmten Seitenkontext deklarieren.
@page und fast alle dazu gehörenden Regeln zur seitenbezogenen Ausgabe wurden nicht mit nach CSS 2.1 übernommen, sondern gleich im separaten CSS-3-Modul Paged Media Properties for CSS3 zusammengefaßt.
Syntax
@page<page-selector><:page-pseudo-class>{Regeln}
Komponenten
<page-selector>- Zeichenstring, mit dem der Seitendefinition ein eindeutiger Name zugeordnet werden kann. Dieser Wert ist optional.
<:page-pseudo-class>- eine der drei Druck-Pseudoklassen
:first,:rightoder:left. Dieser Wert ist optional. {Regeln}- Block der definierten Regeln.
Code-Beispiel
@page rechte-seite:right {
body { margin:20mm; margin-left:25mm; }
}
@page linke-seite:left {
body { margin:20mm; margin-right:25mm; }
}
Browserunterstützung
- Die Unterstützung der Eigenschaften zur Drucksteuerung ist zur Zeit noch zu lückenhaft für die Produktion, sodass sich eine detaillierte Erläuterung noch nicht lohnt. Es sind aber andererseits auch keine negativen Auswirkungen dieser Eigenschaften bekannt.
Ränder, Marken und die Seitenbox
Die Seitenbox unterscheidet sich in einem Punkt grundsätzlich von den Boxen des visuellen Modells: sie hat keinen Inhalt, der ihre Größe bestimmt, sondern eine feste Größe, in die Inhalt hineinfließt. Die Ränder werden deshalb nicht aus dem Inhalt heraus gerechnet, sondern von außen abgezogen.
Innerhalb der At-Regel sind daher nur wenige Eigenschaften sinnvoll. Die Ränder legen fest, wie viel Platz um den Satzspiegel bleibt; die Größe bestimmt die Fläche. Eigenschaften, die vom Inhalt abhängen, haben hier keinen Bezugspunkt.
Die Ränder der Seitenbox und die Außenabstände der Elemente darin überlagern sich am Seitenanfang nicht: der Abstand oberhalb des ersten Absatzes einer Seite entfällt, weil er sonst zu einem unterschiedlich hohen Satzbeginn auf jeder Seite führen würde.
Erste, linke und rechte Seiten
Die At-Regel lässt sich mit Pseudoklassen einschränken, die es sonst nirgends gibt. Sie sprechen nicht Elemente an, sondern Seiten: die erste Seite eines Dokuments, alle linken und alle rechten Seiten.
Die Unterscheidung zwischen links und rechts ist die Voraussetzung für einen ordentlichen beidseitigen Druck. Der Bundsteg, also der Rand an der gehefteten Kante, liegt auf linken Seiten rechts und auf rechten Seiten links. Ohne diese Unterscheidung wäre der Text auf jeder zweiten Seite zu dicht an der Bindung.
Die erste Seite bekommt oft eine eigene Behandlung, etwa einen größeren oberen Rand, weil dort ein
Titel steht. Zusammen mit den Werten left und right der Umbrucheigenschaften ergibt sich
daraus ein vollständiges Bild: die eine Seite bestimmt, wo ein Kapitel beginnt, die andere, wie diese
Seite aussieht.
Welche Seite als links und welche als rechts gilt, ergibt sich aus der Schreibrichtung. Bei einem von links nach rechts gesetzten Dokument ist die erste Seite eine rechte, bei umgekehrter Richtung eine linke. Wer die Ränder spiegelbildlich setzt, sollte das prüfen, denn eine vertauschte Zuordnung fällt erst am gehefteten Ausdruck auf und nicht in der Vorschau am Bildschirm.
Besonderheiten im Medientyp handheld
Diese At-Regel ist nicht Teil des Standards CSS Mobile Profile 1.0 und wird auch durch keinen Browser eines Mobilgerätes bisher umgesetzt.
Wechselwirkungen
Ausblick
Einen vollständigen Einblick gibt das CSS-3-Modul Paged Media Properties for CSS 3.
Verwendete Standards
Dieser CSS-Referenz liegen folgende Spezifikationen zugrunde: CSS 1, CSS 2.1 CR und CSS Mobile.