
CSS-Selektoren
CSS-Selektoren werden verwendet um HTML-Elemente zu "finden" (oder wählen) die gestylt werden. Man kann CSS-Selektoren in 5 Kategorien unterteilen:Einfache Selektoren (Elemente basierend auf Name, ID, Klasse auswählen)
Kombinator-Selektoren(Elemente basierend auf einer bestimmten Beziehung zwischen ihnen auswählen)
Pseudoklassenselektoren (Elemente basierend auf einem bestimmten Zustand auswählen)
CSS Pseudo-Elemente(einen Teil eines Elements auswählen und formatieren)
Attributselektoren (Elemente basierend auf einem Attribut oder Attributwert auswählen)Auf dieser Seite werden die grundlegendsten CSS-Selektoren erläutert.
Was sind Pseudo-Elemente?
Ein CSS Pseudo-Element wird verwendet zum stylen einen spezifischen Teil eines Elementes. Zum Beispiel kann es verwendet werden: Stylen des ersten Buchstaben oder der ersten Linie eines Elementes. Fügt Inhalt vor oder nach Element-(Inhalt) ein.Syntax:
Der Syntax von Pseudo-Elementen:selector::pseudo-element {property: value;}


<!DOCTYPE html> |
<html> |
<head> |
<style> |
p::first-line { |
color: #ff0000; |
font-variant: small-caps; |
} |
</style> |
</head> |
<body> |
<p>Du kann verwenden das ::first-line Pseudo-Element um einen speziellen Effekt der ersten Zeile eines Textes hinzuzufügen. |
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. |
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, |
pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate </p> |
</body> |
</html> |

Pseudo-Elemente können kombiniert werden mit CSS-Klassen:

<!DOCTYPE html> |
<html> |
<head> |
<style> |
p.intro::first-letter { |
color: #ff0000; |
font-size: 200%; |
} |
</style> |
</head> |
<body> |
<p class="intro">Dies ist ein Absatz.</p> |
<p>Das ist ein Absatz mit einigem Text. Ein wenig Text.</p> |
</body> |
</html> |

Einige Pseudo-Elemente können kombiniert werden.
Im folgenden Beispiel, der erste Buchstaben eines Absatzes wird rot sein und eine XXL-Grösse aufweisen.
Der Rest von der ersten Linie wird blau und in Kleinbuchstaben geschrieben sein.
Der Rest vom Absatz wird die Buchstabengrösse und Farbe nach Vorlage aufweisen:

<!DOCTYPE html> |
<html> |
<head> |
<style> |
p::first-letter { |
color: #ff0000; |
font-size: xx-large; |
} |
p::first-line { |
color: #0000ff; |
font-variant: small-caps; |
} |
</style> |
</head> |
<body> |
<p>Du kannst kombinieren das ::first-letter und ::first-line Pseudo-Element<br> |
für einen speziellen Effekt des ersten Buchstaben und die erste Zeile!</p> |
</body> |
</html> |

Das ::before Pseudo-Element fügt Inhalt vor den Inhalt eines Elementes ein.

<!DOCTYPE html> |
<html> |
<head> |
<style> |
h3::before { |
content: url(Bilder/Logo12SmallScreen.png); |
} |
</style> |
</head> |
<body> |
<h3>Das ist eine Überschrift</h3> |
<p>Das ::before Pseudo-Element fügt Inhalt vor den Inhalt eines Elementes ein.</p> |
<h3>Das ist eine Überschrift</h3> |
</body> |
</html> |

Das ::after Pseudo-Element kann verwendet werden für Inhalt nach dem Inhalt eines Elementes.
Das folgende Beispiel fügt ein Bild nach dem Inhalt jedes <h3> Elementes ein:

<!DOCTYPE html> |
<html> |
<head> |
<style> |
h3::after { |
content: url(Bilder/Logo12SmallScreen.png); |
} |
</style> |
</head> |
<body> |
<h3>Das ist eine Überschrift</h3> |
<p>Das ::after Pseudo-Element fügt Inhalt nach dem Inhalt eines Elementes ein.</p> |
<h3>Das ist eine Überschrift</h3> |
</body> |
</html> |

Das ::selection Pseudo-Element entspricht einem Teil eines Elementes das vom "User" ausgewählt wird.
Die folgenden CSS Eigenschaften können angewandt werden für ::selection: color, background, cursor, and outline.
Das folgende Beispiel formatiert denn vom "User" ausgewählten Text rot und den Hintergrund gelb:

<!DOCTYPE html> |
<html> |
<head> |
<style> |
::-moz-selection { /* Code for Firefox */ |
color: red; |
background: yellow; |
} |
::selection { |
color: red; |
background: yellow; |
} |
</style> |
</head> |
<body> |
<h1>Wähle einigen Text auf dieser Seite:</h1> |
<p>Das ist ein Absatz.</p> |
<div>Das ist einiger Text in einem div-Element.</div> |
<p><strong>Bemerke:</strong> Firefox unterstützt eine Alternative, the ::-moz-selection Eigenschaft.</p> |
</body> |
</html> |