HTMLCSSJavaScriptIndexRoadmapImpressum

Struktur-Pseudoklassen

Struktur-Pseudoklassen wählen Elemente anhand ihrer Position innerhalb eines Elternelements aus. Sie sind besonders nützlich, wenn du Elemente gezielt stylen möchtest, ohne zusätzliche Klassen zu vergeben.

In den folgenden Beispielen ist <ol> das Elternelement. Die <li>-Elemente sind die Kindelemente.

HTML-Grundlage

1<ol>
2    <li>Apfel</li>
3    <li>Banane</li>
4    <li>Orange</li>
5    <li>Birne</li>
6    <li>Kiwi</li>
7</ol>

:first-child - Erstes Kindelement

:first-child wählt ein Element aus, wenn es das erste Kind seines Elternelements ist. Im Beispiel wird Apfel rot dargestellt.

CSS

1li:first-child {
2    color: red;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:last-child - Letztes Kindelement

:last-child wählt ein Element aus, wenn es das letzte Kind seines Elternelements ist. Im Beispiel wird Kiwi blau dargestellt.

CSS

1li:last-child {
2    color: blue;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-child(n) - Bestimmtes Kindelement

:nth-child(n) wählt ein Element anhand seiner Position aus. Mit :nth-child(2) wird das zweite Kind ausgewählt. Im Beispiel ist das Banane.

CSS

1li:nth-child(2) {
2    color: orange;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-child(even) - Gerade Elemente auswählen

Mit :nth-child(even) werden alle Elemente mit gerader Position ausgewählt. Im Beispiel sind das Banane und Birne.

CSS

1li:nth-child(even) {
2    color: green;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-child(odd) - Ungerade Elemente auswählen

Mit :nth-child(odd) werden alle Elemente mit ungerader Position ausgewählt. Im Beispiel sind das Apfel, Orange und Kiwi.

CSS

1li:nth-child(odd) {
2    color: red;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-child(3n) - Jedes dritte Element auswählen

Mit :nth-child(3n) wird jedes dritte Element ausgewählt. Das betrifft das 3., 6., 9. Element und so weiter. Im Beispiel wird Orange blau dargestellt.

CSS

1li:nth-child(3n) {
2    color: blue;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-last-child(n) - Von hinten zählen

:nth-last-child(n) funktioniert ähnlich wie :nth-child(n), zählt aber von hinten. Mit :nth-last-child(2) wird das zweite Element von hinten ausgewählt. Im Beispiel ist das Birne.

CSS

1li:nth-last-child(2) {
2    color: red;
3}

Ausgabe

  1. Apfel
  2. Banane
  3. Orange
  4. Birne
  5. Kiwi

:nth-of-type() - Zält nur Kindelemente eines bestimmten Typs

:nth-child() zählt alle Kindelemente innerhalb eines Elternelements. Dabei ist egal, welchen Elementtyp die Kinder haben.

:nth-of-type() zählt dagegen nur Elemente desselben Typs. Das ist hilfreich, wenn du zum Beispiel gezielt das zweite <p>-Element auswählen möchtest.

HTML

1<div>
2    <p>Absatz 1</p>
3    <h2>Überschrift</h2>
4    <p>Absatz 2</p>
5    <p>Absatz 3</p>
6</div>

CSS mit :nth-child()

1p:nth-child(2) {
2    color: red;
3}

CSS mit :nth-of-type()

1p:nth-of-type(2) {
2    color: purple;
3}

In diesem Beispiel würde p:nth-child(2) keinen Absatz auswählen, weil das zweite Kind ein <h2> ist. p:nth-of-type(2) wählt dagegen den zweiten Absatz aus.

Ausgabe

Absatz 1

Überschrift

Absatz 2

Absatz 3

Im nächsten Kapitel lernst du: Pseudo-Elemente (::before, ::after)