HTMLCSSJavaScriptIndexRoadmapImpressum

Attributselektoren

Mit Attribut-Selektoren in CSS wählst du HTML-Elemente anhand ihrer Attribute oder Attributwerte aus.

CSS Grundsyntax

1element[attribut] {
2    /* CSS-Regeln */
3}

Element mit bestimmtem Attribut

Alle Input-Elemente mit dem Attribut type werden angesprochen.

HTML Elemente mit Attribut type

1<input type="text"><br>
2<input type="password">

CSS

1input[type] {
2    border: 2px solid blue;
3}

Ausgabe


Exakter Attributwert (=)

Alle Input-Elemente mit type="password" werden angesprochen. type="text" wird nicht angesprochen.

HTML Elemente mit Attribut type

1<input type="text"><br>
2<input type="password">

CSS

1input[type="password"] {
2    background-color: lightyellow;
3}

Ausgabe


Wert enthält ein bestimmtes Wort (~=)

Mit [class~="highlight"] sprichst du Elemente an, bei denen das Attribut class das einzelne Wort "highlight" enthält.

HTML

1<p class="text highlight">Hallo</p>
2<p class="highlight">Welt</p>

CSS

1[class~="highlight"] {
2    color: orange;
3}

Ausgabe

Hallo

Welt

Wert beginnt mit einem Wort oder Wort-Teil (|=)

Mit [lang|="de"] werden Elemente angesprochen, deren Wert genau "de" ist oder mit "de-" beginnt.

HTML

1<p lang="de">Deutsch</p>
2<p lang="de-CH">Schweizerdeutsch</p>
3<p lang="en">Englisch</p>

CSS

1[lang|="de"] {
2    color: green;
3}

Ausgabe

Deutsch

Schweizerdeutsch

Englisch

Wert beginnt mit bestimmtem Text (^=)

Mit ^= werden Elemente angesprochen, deren Attributwert mit einem bestimmten Text beginnt.

HTML

1<a href="https://example.com">Externer Link</a><br>
2<a href="/kontakt">Interner Link</a>

CSS

1a[href^="https"] {
2    color: red;
3}

Wert endet mit bestimmtem Text ($=)

Mit $= werden Elemente angesprochen, deren Attributwert mit einem bestimmten Text endet.

HTML

1<a href="bild.jpg">JPG Bild</a><br>
2<a href="dokument.pdf">PDF Dokument</a>

CSS

1a[href$=".pdf"] {
2    font-weight: bold;
3}

Wert enthält bestimmten Text (*=)

Mit *= werden Elemente angesprochen, deren Attributwert einen bestimmten Text enthält.

HTML

1<a href="/produkte/schuhe">Schuhe</a><br>
2<a href="/kontakt">Kontakt</a>

CSS

1a[href*="produkte"] {
2    background-color: lightblue;
3}

Groß- und Kleinschreibung ignorieren (i)

Mit dem Zusatz i wird beim Vergleich die Groß- und Kleinschreibung ignoriert.

HTML

1<input type="Email"><br>
2<input type="text">

CSS

1input[type="email" i] {
2    border: 2px solid purple;
3}

Ausgabe