Cascading Style Sheets, level 2

CSS2-Spezifikation

W3C Recommendation 12-May-1998

Zusammenfassung

Diese Spezifikation definiert Cascading Style Sheets, level 2 (CSS2). CSS2 ist eine Formatierungssprache, die es Autoren und Benutzern gestattet, Formatierungen (zum Beispiel Schriften, Abstände und akustische Aspekte) von strukturierten Dokumenten (zum Beispiel HTML-Dokumente und XML-Instanzen) durchzuführen. Mit der Trennung der Präsentation eines Dokuments vom Inhalt des Dokuments vereinfacht CSS2 die Erfassung von Web-Dokumenten und die Verwaltung von Sites.

CSS2 basiert auf CSS1 (siehe [CSS1]) und mit sehr wenigen Ausnahmen sind alle gültigen CSS1-Stylesheets auch gültige CSS2-Stylesheets. CSS2 unterstützt medienspezifische Stylesheets, so dass Autoren die Darstellung ihrer Dokumente auf visuelle Browser, akustische Geräte, Drucker, Braille-Geräte, Handhelds und so weiter zuschneiden können. Diese Spezifikation unterstützt zudem die Positionierung von Inhalt, herunterladbare Schriften, Tabellen-Layout, Internationalisierung, automatische Zähler und Nummerierung, sowie einige Eigenschaften, die mit der Benutzerschnittstelle zu tun haben.

Verfügbare Sprachen

Die englische Version dieser Spezifikation ist die einzige normative Version. Übersetzung in andere Sprachen erreichen Sie über http://www.w3.org/Style/css2-updates/translations.html.

Errata

Die Liste bekannter Fehler in dieser Spezifikation steht unter http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata.html zur Verfügung. Bitte berichten Sie Fehler in diesem Dokument an css2-editors@w3.org.

Inhaltsverzeichnis

1 Informationen zur CSS2-Spezifikation
1.1 Wie Sie die Spezifikation lesen
1.2 Der Aufbau der Spezifikation
1.2.1 Abschnitt 2: Eine Einführung in CSS2
1.2.2 Abschnitt 3 – 20: CSS2-Referenzhandbuch
1.2.3 Anhänge
1.3 Konventionen
1.3.1 Elemente und Attribute der Dokumentsprache
1.3.2 CSS-Eigenschaftsdefinitionen
1.3.3 Zusammenfassende Eigenschaften
1.3.4 Anmerkungen und Beispiele
1.3.5 Bilder und ausführliche Beschreibungen
1.4 Danksagungen
1.5 Copyright-Hinweis
2 Einführung in CSS2
2.1 Ein kurzer CSS2-Überblick für HTML
2.2 Ein kurzer CSS2-Überblick für XML
2.3 Das CSS2-Verarbeitungsmodell
2.3.1 Die Zeichenfläche
2.3.2 CSS2-Adressierungsmodell
2.4 CSS-Entwurfskonzepte
3 Konformität: Anforderungen und Empfehlungen
3.1 Definitionen
3.2 Konformität
3.3 Fehlerbedingungen
3.4 Der text/css-Inhaltstyp
4 CSS2-Syntax und grundlegende Datentypen
4.1 Syntax
4.1.1 Token-Bildung
4.1.2 Schlüsselwörter
4.1.3 Zeichen und Groß-/Kleinschreibung
4.1.4 Anweisungen
4.1.5 At-Regeln
4.1.6 Blöcke
4.1.7 Regelmengen, Deklarationsblöcke und Selektoren
4.1.8 Deklarationen und Eigenschaften
4.1.9 Kommentare
4.2 Regeln für die Verarbeitung von Parser-Fehlern
4.3 Werte
4.3.1 Integer und reelle Zahlen
4.3.2 Längen
4.3.3 Prozentwerte
4.3.4 URL + URN = URI
4.3.5 Zähler
4.3.6 Farben
4.3.7 Winkel
4.3.8 Zeiten
4.3.9 Frequenzen
4.3.10 Zeichenketten
4.4 CSS-Dokumentdarstellung
4.4.1 Verweise auf Zeichen, die nicht in einer Zeichencodierung dargestellt sind
5 Selektoren
5.1 Mustervergleich
5.2 Selektorsyntax
5.2.1 Gruppierung
5.3 Universeller Selektor
5.4 Typselektoren
5.5 Selektoren für Nachfahren
5.6 Kind-Selektoren
5.7 Selektoren für benachbarte Elemente
5.8 Attribut-Selektoren
5.8.1 Attribute und Attributwerte vergleichen
5.8.2 Standardattributwerte in DTDs
5.8.3 Klassen-Selektoren
5.9 ID-Selektoren
5.10 Pseudo-Elemente und Pseudo-Klassen
5.11 Pseudo-Klassen
5.11.1 Die Pseudo-Klasse :first-child
5.11.2 Die Link-Pseudo-Klassen :link und :visited
5.11.3 Die dynamischen Pseudo-Klassen :hover, :active und :focus
5.11.4 Die Sprach-Pseudo-Klasse :lang
5.12 Pseudo-Elemente
5.12.1 Das Pseudo-Element :first-line
5.12.2 Das Pseudo-Element :first-letter
5.12.3 Die Pseudo-Elemente :before und :after
6 Eigenschaftswerte zuweisen, Kaskaden und Vererbung
6.1 Spezifizierte, berechnete und tatsächliche Werte
6.1.1 Spezifizierte Werte
6.1.2 Berechnete Werte
6.1.3 Tatsächliche Werte
6.2 Vererbung
6.2.1 Der Wert 'inherit'
6.3 Die @import-Regel
6.4 Die Kaskade
6.4.1 Kaskaden-Reihenfolge
6.4.2 !important-Regeln
6.4.3 Berechnung der Spezifität eines Selektors
6.4.4 Priorität von Darstellungsanweisungen, die nicht Teil von CSS sind
7 Medientypen
7.1 Einführung in Medientypen
7.2 Angabe medienabhängiger Stylesheets
7.2.1 Die @media-Regel
7.3 Erkannte Medientypen
7.3.1 Mediengruppen
8 Das Box-Modell
8.1 Maße der Boxen
8.2 Beispiele für Ränder, Polsterung und Rahmen
8.3 Randeigenschaften: 'margin-top', 'margin-right', 'margin-bottom', 'margin-left' und 'margin'
8.3.1 Zusammenfallende Ränder
8.4 Polstereigenschaften: 'padding-top', 'padding-right', 'padding-bottom', 'padding-left' und 'padding'
8.5 Rahmeneigenschaften (border)
8.5.1 Rahmenbreite: 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width' und 'border-width'
8.5.2 Rahmenfarbe: 'border-top-color', 'border-right-color', 'border-bottom-color', 'border-left-color' und 'border-color'
8.5.3 Rahmenstil: 'border-top-style', 'border-right-style', 'border-bottom-style', 'border-left-style' und 'border-style'
8.5.4 Zusammenfassende Rahmeneigenschaften: 'border-top', border-bottom', 'border-right', 'border-left' und 'border'
9 Visuelles Formatierungsmodell
9.1 Einführung in das visuelle Formatierungsmodell
9.1.1 Der Viewport
9.1.2 Umschließende Blöcke
9.2 Kontrolle über das Erstellen von Boxen
9.2.1 Elemente auf Blockebene und Block-Boxen
9.2.2 Inzeilige Elemente und inzeilige Boxen (Elemente auf Inline-Ebene und Inline-Boxen)
9.2.3 Kompakte Boxen (Compact-Box)
9.2.4 Run-in-Boxen
9.2.5 Die 'display'-Eigenschaft
9.3 Positionierungsschemata
9.3.1 Auswahl eines Positionierungsschemas: 'position'-Eigenschaft
9.3.2 Box-Abstände : 'top', 'right', 'bottom', 'left'
9.4 Normaler Fluss
9.4.1 Block-Formatierungskontext
9.4.2 Inline-Formatierungskontext
9.4.3 Relative Positionierung
9.5 Floats
9.5.1 Positionierung des Floats: die 'float'-Eigenschaft
9.5.2 Steuerung des Flusses neben Floats: die 'clear'-Eigenschaft
9.6 Absolute Positionierung
9.6.1 Feste Positionierung
9.7 Beziehungen zwischen 'display', 'position' und 'float'
9.8 Vergleich von normalem Fluss, Floats und absoluter Positionierung
9.8.1 Normaler Fluss
9.8.2 Relative Positionierung
9.8.3 Eine Box floaten
9.8.4 Absolute Positionierung
9.9 Ebenen (Layer)
9.9.1 Angabe der Stapelebene: die 'z-index'-Eigenschaft
9.10 Textrichtung: die Eigenschaften 'direction' und 'unicode-bidi'
10 Details zum visuellen Formatierungsmodell
10.1 Definition des „umschließenden Blocks“
10.2 Inhaltsbreite : die 'width'-Eigenschaft
10.3 Breiten und Ränder berechnen
10.3.1  Inline, nicht-ersetzte Elemente
10.3.2  Inline, ersetzte Elemente
10.3.3  Blockebene, nicht-ersetzte Elemente im normalen Fluss
10.3.4  Blockebene, ersetzte Elemente im normalen Fluss
10.3.5  Floating, nicht-ersetzte Elemente
10.3.6  Floating, ersetzte Elemente
10.3.7  Absolute Positionierung, nicht-ersetzte Elemente
10.3.8  Absolute Positionierung, ersetzte Elemente
10.4 Minimale und maximale Breiten: 'min-width' und 'max-width'
10.5 Inhaltshöhe : die 'height'-Eigenschaft
10.6 Höhen und Ränder berechnen
10.6.1  Inline, nicht-ersetzte Elemente
10.6.2  Inline, ersetzte Elemente, Blockebene, ersetzte Elemente im normalen Fluss, und Floating, ersetzte Elemente
10.6.3  Blockebene, nicht ersetzte Elemente im normalen Fluss, und Floating, nicht ersetzte Elemente
10.6.4  Absolute Positionierung, nicht-ersetzte Elemente
10.6.5  Absolute Positionierung, ersetzte Elemente
10.7 Mindest- und Maximalhöhen: 'min-height' und 'max-height'
10.8 Zeilenhöhenberechnungen: die Eigenschaften 'line-height' und 'vertical-align'
10.8.1  Durchschuss und Halb-Durchschuss
11 Visuelle Effekte
11.1 Überlauf und Abschneiden
11.1.1 Überlauf: die 'overflow'-Eigenschaft
11.1.2 Abschneiden : die 'clip'-Eigenschaft
11.2 Sichtbarkeit : die 'visibility'-Eigenschaft
12 Erzeugter Inhalt, automatische Nummerierung und Listen
12.1 Die Pseudoelemente :before und :after
12.2 Die 'content'-Eigenschaft
12.3 Zusammenspiel von :before und :after mit den Elementen 'compact' und 'run-in'
12.4 Anführungszeichen
12.4.1 Anführungszeichen mit der 'quotes'-Eigenschaft angeben
12.4.2 Anführungszeichen mit der 'content'-Eigenschaft einfügen
12.5 Automatische Zähler und Nummerierung
12.5.2 Verschachtelte Zähler und Gültigkeitsbereich
12.5.3  Zählerstile
12.5.4  Zähler in Elementen mit 'display:none'
12.6 Markierungen (Marker) und Listen
12.6.1 Markierungen: die Eigenschaft 'marker-offset'
12.6.2 Listen: die Eigenschaften 'list-style-type', 'list-style-image', 'list-style-position' und 'list-style'
13 Seitenmedien
13.1 Einführung in Seitenmedien
13.2 Seiten-Boxen: die @page -Regel
13.2.1 Seitenränder
13.2.2 Seitengröße : die Eigenschaft 'size'
13.2.3 Schnittmarkierungen : die 'marks'-Eigenschaft
13.2.4 Linke, rechte und erste Seiten
13.2.5 Inhalt außerhalb der Seiten-Box
13.3 Seitenumbrüche
13.3.1 Umbruch vor/nach Elementen: 'page-break-before', 'page-break-after', 'page-break-inside'
13.3.2 Benannte Seiten verwenden: 'page'
13.3.3 Umbrüche innerhalb von Elementen: 'Waisen', 'Witwen'
13.3.4 Erlaubte Seitenumbrüche
13.3.5 Erzwungene Seitenumbrüche
13.3.6 „Beste“ Seitenumbrüche
13.4 Kaskade im Seitenkontext
14 Farben und Hintergrund
14.1 Vordergrundfarbe : die 'color'-Eigenschaft
14.2 Der Hintergrund
14.2.1 Hintergrundeigenschaften : 'background-color', 'background-image', 'background-repeat', 'background-attachment', 'background-position' und 'background'
14.3 Gammakorrektur
15 Schriften
15.1 Einführung
15.2 Schriftspezifikation
15.2.1 Eigenschaften für die Schriftspezifikation
15.2.2 Schriftfamilie: die Eigenschaft 'font-family'
15.2.3 Schriftstile: die Eigenschaften 'font-style', 'font-variant', 'font-weight' und 'font-stretch'
15.2.4 Schriftgröße: die Eigenschaften 'font-size' und 'font-size-adjust'
15.2.5 Zusammenfassende Schrift-Eigenschaft: die Eigenschaft 'font'
15.2.6 Generische Schriftfamilien
15.3 Schriftauswahl
15.3.1 Schriftbeschreibungen und @font-face
15.3.2 Deskriptoren für die Auswahl einer Schrift: 'font-family', 'font-style', 'font-variant', 'font-weight', 'font-stretch' und 'font-size'
15.3.3 Deskriptoren für die Schriftdatenqualifizierung : 'unicode-range'
15.3.4 Deskriptor für numerische Werte: 'units-per-em'
15.3.5 Deskriptor für den Verweis: 'src'
15.3.6 Deskriptoren für den Vergleich: 'panose-1', 'stemv', 'stemh', 'slope', 'cap-height', 'x-height', 'ascent' und 'descent'
15.3.7 Deskriptoren für die Synthese: 'widths', 'bbox' und 'definition-src'
15.3.8 Deskriptoren für die Ausrichtung : 'baseline', 'centerline', 'mathline' und 'topline'
15.3.9 Beispiele
15.4 Schriftcharakteristika
15.4.1 Einleitung
15.4.2 Vollständiger Schriftname
15.4.3 Koordinaten-Einheiten im em-Quadrat
15.4.4 Zentrale Grundlinie
15.4.5 Schriftcodierung
15.4.6 Schriftfamilienname
15.4.7 Glyphenbreite
15.4.8 Horizontale Strichbreite
15.4.9 Höhe von Großbuchstaben-Glyphen
15.4.10 Höhe von Kleinbuchstaben-Glyphen
15.4.11 Untere Grundlinie
15.4.12 Mathematische Grundlinie
15.4.13 Maximale umschließende Box
15.4.14 Maximale nicht-akzentuierte Höhe
15.4.15 Maximale nicht-akzentuierte Tiefe
15.4.16 Panose-1-Zahl
15.4.17 Bereich der ISO 10646-Zeichen
15.4.18 Obere Grundlinie
15.4.19 Vertikale Strichbreite
15.4.20 Vertikaler Strichwinkel
15.5 Algorithmus zum Schriftvergleich
15.5.1 Schriftgewichtungswerte auf Schriftnamen abbilden
15.5.2 Beispiele für den Schriftvergleich
16 Text
16.1 Einrückung: die 'text-indent'-Eigenschaft
16.2 Ausrichtung: die 'text-align'-Eigenschaft
16.3 Ausschmückung
16.3.1 Unterstreichen , Überstreichen , Durchstreichen und Blinken: die 'text-decoration'-Eigenschaft
16.3.2 Textschatten: die 'text-shadow'-Eigenschaft
16.4 Buchstaben- und Wortabstände: die 'letter-spacing'- und 'word-spacing'-Eigenschaften
16.5 Großschreibung: die 'text-transform'-Eigenschaft
16.6 Leerraum: die 'white-space'-Eigenschaft
17 Tabellen
17.1 Einführung in Tabellen
17.2 Das CSS-Tabellenmodell
17.2.1 Anonyme Tabellenobjekte
17.3 Spaltenselektoren
17.4 Tabellen im visuellen Formatierungsmodell
17.4.1 Positionierung und Ausrichtung von Überschriften
17.5 Visuelles Layout von Tabelleninhalt
17.5.1 Tabellenebenen und Transparenz
17.5.2 Algorithmen für die Tabellenbreite: die 'table-layout'-Eigenschaft
17.5.3 Algorithmen für die Tabellenhöhe
17.5.4 Horizontale Ausrichtung in einer Spalte
17.5.5 Dynamische Zeilen- und Spalteneffekte
17.6 Rahmen
17.6.1 Das Modell mit trennenden Rahmen
17.6.2 Das Modell mit den zusammenfallenden Rahmen
17.6.3 Rahmenstile
17.7 Akustische Darstellung von Tabellen
17.7.1 Überschriften aussprechen: die 'speak-header'-Eigenschaft
18 Benutzeroberfläche
18.1 Cursor: die 'cursor'-Eigenschaft
18.2 Benutzereinstellungen für Farben
18.3 Benutzereinstellungen für Schriften
18.4 Dynamische Einrahmungen: die 'outline'-Eigenschaft
18.4.2 Einrahmungen und der Fokus
18.5 Vergrößerung
19 Akustische Stylesheets
19.1 Einführung in akustische Stylesheets (Aural Stylesheets)
19.2 Eigenschaften für die Lautstärke : 'volume'
19.3 Spracheigenschaften: 'speak'
19.4 Pausen-Eigenschaften: 'pause-before', 'pause-after' und 'pause'
19.5 Cue-Eigenschaften: 'cue-before', 'cue-after' und 'cue'
19.6 Misch-Eigenschaften: 'play-during'
19.7 Räumliche Eigenschaften: 'azimuth' und 'elevation'
19.8 Eigenschaften zur Sprachcharakteristik: 'speech-rate', 'voice-family', 'pitch', 'pitch-range', 'stress' und 'richness'
19.9 Spracheigenschaften: 'speak-punctuation' und 'speak-numeral'
A Ein Beispiel-Stylesheet für HTML 4.0
B Änderungen gegenüber CSS1
B.1 Neue Funktionen
B.2 Aktualisierte Beschreibungen
B.3 Semantische Änderungen gegenüber CSS1
C Hinweise zur Implementierung und Performance von Schriften
C.1 Glossar für Schriftbegriffe
C.2 Schriften finden
C.3 Bedeutung der Panose-Zahlen
C.4 Ableitung von Unicode-Bereichen für TrueType
C.5 Automatische Deskriptor-Erstellung
D Die Grammatik von CSS2
D.1 Grammatik
D.2 Lexikalischer Scanner
D.3 Vergleich der Tokenbildung zwischen CSS1 und CSS2
E Literaturhinweise


E.1 Normative Literaturhinweise
E.2 Informelle Literaturhinweise
F Eigenschaftsindex
G Deskriptor-Index