Dieser Artikel ist als Fortsetzung zu den Selektorenbeispielen zu verstehen.
Pseudoklassen und Pseudoelemente
Was sind Pseudoelemente und -klassen?
Als Pseudoklassen bezeichnet man Elemente, die über bestimmte Merkmale verfügen. Das kann z.B. ein Element sein, dass das erste Kind eines Elternelements ist.
Pseudoelemente dagegen sind bestimmte Bereiche, die nicht von der Auszeichnungssprache erfasst, aber dennoch mit Stilangaben versehen werden können, z.B. die erste Textzeile in einem Element.
Nach den Regeln von CSS 2.1 beginnen Pseudoelemente und -klassen mit einem Doppelpunkt, z.B. :active.
Um Pseudoelemente besser von Pseudoklassen unterscheiden zu k�nnen sieht CSS 3 vor, dass Pseudoelemente mit zwei Doppelpunkten markiert werden (z.B. ::after). Das wird bereits von einigen Browsern erkannt.
:first-child - Erstes Kindelement (Pseudoklasse)
Die Pseudoklasse :first-child selektiert das Element, das das erste Kind seines Elternelements ist.
Beispiel (Stilangabe): Beispiel (HTML): :first-child ist identisch zur Kombination *:first-child.
:first-line - Erste Textzeile (Pseudoelement)
Wusstet ihr schon, dass Text innerhalb von Blockelementen intern ebenfalls als Element betrachtet wird? Es handelt sich dabei um so genannte anonyme Boxen.
Dieses Pseudoelement stellt die erste Zeile in einem Element dar. Diese Zeile endet entweder durch den automatischen Fließtextumbruch oder durch ein br-Element (bzw. „\A“ bei generiertem Inhalt).
Beispiel (Stilangabe): Beispiel (HTML): :first-line ist identisch zur Kombination *:first-line.
:first-letter - Erster Buchstabe (Pseudoelement)
Mit diesem Pseudoelement wird der erste Buchstabe der ersten Textzeile in einem Element formatiert. Laut Spezifikation wird auch bestimmte vor- oder nachfolgende Punktuation mitformatiert, wenn diese bestimmten Unicode-Klassen zugehörig sind.
Beispiel (Stilangabe): Beispiel (HTML): :first-letter ist identisch zur Kombination *:first-letter.
:lang() - Elemente mit bestimmter Sprache (Pseudoklasse)
Es ist möglich, für Elemente, die zu einer bestimmten Sprache gehören, spezielle Formatierungen anzugeben.
Diese Pseudoklasse erwartet innerhalb der Klammern eine gültige Länderkennung, z.B. de, de-AT, de-DE, en, en-US etc.
Beispiel (Stilangabe): Beispiel (HTML):
Wird einem Element eine Sprache zugeordnet, vererbt sich diese Angabe auch auf die Kindelemente. Daher ist es möglich, dass das Akronym „BKA“ formatiert wird, obwohl es über keine spezifische Sprachkennung verfügt.
Hinweis:
Möchte man nur Elemente mit dem Sprachattribut formatieren eignet sich der Attributselektor!
Achtung: Mit welchem Attribut die Sprache zugewiesen wird hängt von der Auszeichnungssprache ab!
In HTML gilt das lang-Attribut, in XHTML das xml:lang-Attribut.
In HTML-kompatiblem XHTML werden daher beide Attribute gesetzt, da in als HTML geparstem XHTML das lang-Attribut zählt und in als XML geparstem XHTML das xml:lang-Attribut.
:link - Unbesuchter Verweis (Pseudoklasse)
Mit dieser Pseudoklasse werden alle Verweise angesprochen, deren Ziel vom Benutzer noch nicht besucht werden.
Beispiel (Stilangabe):
Angenommen, der Benutzer hat die Seite http://www.example.org/ noch nicht besucht.
Beispiel (HTML): :link ist identisch zur Kombination a:link.
:visited - Besuchter Verweis (Pseudoklasse)
Diese Pseudoklasse ist das Gegenstück zu :link.
Beispiel (Stilangabe):
Angenommen, der Benutzer hat die Seite http://www.example.org/ jetzt besucht.
Beispiel (HTML): Hinweis: Durch spezifische Einstellungen (Cache, Optionen zum Datenschutz) kann der Status „besucht“ nach variabler Zeit auf „unbesucht“ zurückfallen.
:visited ist identisch zur Kombination a:visited.
:hover - Mit einem Zeigegerät überfahrene Elemente (Pseudoklasse)
Durch bestimmte Hardware erscheint auf dem Bildschirm ein Zeigelement (meist der Mauszeiger). Befindet sich dieses Zeigeelement über einem Element erhält dieses die Pseudoklasse :hover.
Beispiel (Stilangabe): Beispiel (HTML): Hinweis: Der Internet Explorer 6 (ein veralteter Browser) erkennt :hover nur bei Ankern mit dem href-Attribut. Alle Nachfolger kennen :hover bei allen Elementen.
:hover ist identisch zur Kombination *:hover.
:active - Aktivierte Elemente (Pseudoklasse)
Bestimmte Formatierungen können auf Elemente angewendet werden, wenn diese aktiviert werden. Aktiviert ist ein Element beispielsweise nach dem Klick, aber vor dem wieder loslassen der Maustaste.
Beispiel (Stilangabe): Beispiel (HTML): :active ist identisch zur Kombination *:active.
:focus - Elemente, die eine Eingabe erwarten (Pseudoklasse)
Elemente erhalten die Pseudoklasse :focus, wenn sie eine Benutzereingabe erwarten. Das können z.B. Eingabefelder sein, in denen der Cursor blinkt. Oder auch Verweise, die zwar geklickt, aber nicht besucht wurden (meistens erkennbar durch eine gepunktete outline-Formatierung), dann wäre die Benutzereingabe etwa das Betätigen der Eingabetaste.
Beispiel (Stilangabe): Beispiel (HTML): :focus ist identisch zur Kombination *:focus.
Hinweis: Der internet Explorer hat Schwierigkeiten mit den Pseudoklassen :active und :focus.
---
Eigentlich solte der Text mehr enthalten, aber meine echte Arbeit hat mich leider aufgehalten, tut mir Leid. Werde mein Konzept wohl etwas umstellen müssen.