Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Pseudo-Klassen
EineCSSPseudo-Klasse ist ein Schlüsselwort, das einem Selektor hinzugefügt wird, um einen bestimmten Zustand des ausgewählten Elements zu stylen. Zum Beispiel kann die Pseudo-Klasse:hover verwendet werden, um einen Button auszuwählen, wenn der Zeiger eines Nutzers über den Button schwebt. Dieser ausgewählte Button kann dann gestylt werden.
/* Any button over which the user's pointer is hovering */button:hover { color: blue;}Eine Pseudo-Klasse besteht aus einem Doppelpunkt (:), gefolgt vom Namen der Pseudo-Klasse (z.B.:hover). Eine funktionale Pseudo-Klasse enthält auch ein Paar Klammern, um die Argumente zu definieren (z.B.:dir()). Das Element, an dem eine Pseudo-Klasse angehängt ist, wird alsAnkerelement definiert (z.B.button im Fall vonbutton:hover).
Pseudo-Klassen ermöglichen es Ihnen, einem Element nicht nur in Bezug auf den Inhalt des Dokumentbaums, sondern auch in Bezug auf externe Faktoren wie die Navigationshistorie (zum Beispiel:visited), den Status seines Inhalts (wie:checked bei bestimmten Formularelementen) oder die Position der Maus (wie:hover, wodurch Sie wissen, ob die Maus über einem Element ist oder nicht) einen Stil zuzuweisen.
Hinweis:Im Gegensatz zu Pseudo-Klassen könnenPseudo-Elemente verwendet werden, um einenspezifischen Teil eines Elements zu stylen.
In diesem Artikel
- Elementare Pseudo-Klassen
- Anzeigezustands-Pseudo-Klassen
- Eingabe-Pseudo-Klassen
- Sprachliche Pseudo-Klassen
- Standort-Pseudo-Klassen
- Ressourcenstatus-Pseudo-Klassen
- Zeitdimensionale Pseudo-Klassen
- Baumstrukturale Pseudo-Klassen
- Schattenstrukturale Pseudo-Klassen
- Benutzeraktions-Pseudo-Klassen
- Funktionale Pseudo-Klassen
- Benutzerdefinierte Zustands-Pseudo-Klassen
- Seiten-Pseudo-Klassen
- Ansichtsübergangs-Pseudo-Klassen
- Syntax
- Alphabetisches Verzeichnis
- Spezifikationen
- Siehe auch
Elementare Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf die Kernidentität von Elementen.
Anzeigezustands-Pseudo-Klassen
Diese Pseudo-Klassen ermöglichen die Auswahl von Elementen basierend auf ihren Anzeigestatus.
:openEntspricht einem Element, das entweder offen oder geschlossen sein kann und sich derzeit im geöffneten Zustand befindet.
:popover-openEntspricht einem Popover-Element, das sich derzeit im angezeigten Zustand befindet.
:modalEntspricht einem Element, das sich in einem Zustand befindet, in dem es alle Interaktionen mit Elementen außerhalb davon ausschließt, bis die Interaktion beendet wurde.
:fullscreenEntspricht einem Element, das sich derzeit im Vollbildmodus befindet.
:picture-in-pictureEntspricht einem Element, das sich derzeit im Bild-im-Bild-Modus befindet.
Eingabe-Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf Formularelemente und ermöglichen die Auswahl von Elementen basierend auf HTML-Attributen und dem Zustand, in dem sich das Feld vor und nach der Interaktion befindet.
:enabledRepräsentiert ein Benutzeroberflächenelement, das aktiviert ist.
:disabledRepräsentiert ein Benutzeroberflächenelement, das deaktiviert ist.
:read-onlyRepräsentiert ein beliebiges Element, das vom Nutzer nicht verändert werden kann.
:read-writeRepräsentiert ein beliebiges Element, das vom Nutzer bearbeitet werden kann.
:placeholder-shownEntspricht einem Eingabeelement, das Platzhaltertext anzeigt. Zum Beispiel wird es das
placeholder-Attribut bei den Elementen<input>und<textarea>entsprechen.:autofillEntspricht, wenn ein
<input>vom Browser automatisch ausgefüllt wurde.:defaultEntspricht einem oder mehreren UI-Elementen, die die Standardeinstellung unter einer Gruppe von Elementen sind.
:checkedEntspricht, wenn Elemente wie Kontrollkästchen und Optionsbuttons aktiviert sind.
:indeterminateEntspricht UI-Elementen, wenn sie sich in einem unbestimmten Zustand befinden.
:blankEntspricht einem Benutzereingabe-Element, das leer ist, einen leeren String oder andere null-Eingaben enthält.
:validEntspricht einem Element mit gültigen Inhalten. Zum Beispiel ein Eingabeelement vom Typ 'email', das eine gültig geformte E-Mail-Adresse oder einen leeren Wert enthält, wenn die Kontrolle nicht erforderlich ist.
:invalidEntspricht einem Element mit ungültigen Inhalten. Zum Beispiel ein Eingabeelement vom Typ 'email' mit einem eingegebenen Namen.
:in-rangeGilt für Elemente mit Bereichsbeschränkungen. Zum Beispiel ein Schieberegler, wenn der ausgewählte Wert im erlaubten Bereich liegt.
:out-of-rangeGilt für Elemente mit Bereichsbeschränkungen. Zum Beispiel ein Schieberegler, wenn der ausgewählte Wert außerhalb des erlaubten Bereichs liegt.
:requiredEntspricht, wenn ein Formularelement erforderlich ist.
:optionalEntspricht, wenn ein Formularelement optional ist.
:user-validRepräsentiert ein Element mit korrekter Eingabe, jedoch nur, wenn der Nutzer damit interagiert hat.
:user-invalidRepräsentiert ein Element mit falscher Eingabe, jedoch nur, wenn der Nutzer damit interagiert hat.
Sprachliche Pseudo-Klassen
Diese Pseudo-Klassen spiegeln die Sprache des Dokuments wider und ermöglichen die Auswahl von Elementen basierend auf Sprache oder Schriftlaufrichtung.
Standort-Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf Links und auf gezielte Elemente im aktuellen Dokument.
:any-linkEntspricht einem Element, wenn das Element entweder
:linkoder:visitedentsprechen würde.:linkEntspricht Links, die noch nicht besucht wurden.
:visitedEntspricht Links, die besucht wurden.
:local-linkEntspricht Links, deren absolute URL identisch mit der Ziel-URL ist. Zum Beispiel Anker-Links zur selben Seite.
:targetEntspricht dem Element, das das Ziel der Dokument-URL ist.
:scopeRepräsentiert Elemente, die ein Referenzpunkt für Selektoren sind, um gegen sie zu passen.
Hinweis:Eine:target-within Pseudo-Klasse, um Elemente zu entsprechen, die oder deren Nachfahren das Ziel der Dokument-URL sind, wurde definiert, aber aus der Spezifikation entfernt. Verwenden Sie:has(:target) für diesen Zweck.
Ressourcenstatus-Pseudo-Klassen
Diese Pseudo-Klassen gelten für Medien, die in einem Zustand sein können, in dem sie als abspielend beschrieben werden würden, wie ein Video.
:playingRepräsentiert ein abspielbares Element, das gerade abgespielt wird.
:pausedRepräsentiert ein abspielbares Element, das pausiert ist.
:seekingRepräsentiert ein abspielbares Element, das derzeit eine Wiedergabeposition in der Mediendatei sucht.
:bufferingRepräsentiert ein abspielbares Element, das spielt, aber vorübergehend gestoppt ist, weil es die Mediendatei herunterlädt.
:stalledRepräsentiert ein abspielbares Element, das spielt, aber angehalten ist, weil es die Mediendatei nicht herunterladen kann.
:mutedRepräsentiert ein geräuscherzeugendes Element, das stummgeschaltet ist.
:volume-lockedRepräsentiert ein geräuscherzeugendes Element, dessen Lautstärkepegel vom Browser gesperrt ist.
Zeitdimensionale Pseudo-Klassen
Diese Pseudo-Klassen gelten beim Betrachten von etwas, das zeitlich gesteuert ist, wie einWebVTT Untertitel-Track.
Baumstrukturale Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf den Standort eines Elements innerhalb des Dokumentbaums.
:rootRepräsentiert ein Element, das die Wurzel des Dokuments ist. In HTML ist dies normalerweise das
<html>Element.:emptyRepräsentiert ein Element ohne Kinder, außer Leerzeichen-Zeichen.
:nth-child()Verwendet
An+BNotation, um Elemente aus einer Liste von Geschwisterelementen auszuwählen.:nth-last-child()Verwendet
An+BNotation, um Elemente aus einer Liste von Geschwisterelementen auszuwählen, wobei von hinten nach vorne gezählt wird.:first-childEntspricht einem Element, das das erste seiner Geschwister ist.
:last-childEntspricht einem Element, das das letzte seiner Geschwister ist.
:only-childEntspricht einem Element, das keine Geschwister hat. Zum Beispiel ein Listenelement ohne weitere Listenelemente in dieser Liste.
:heading()Verwendet
An+BNotation, um Überschriftselemente (<h1>-<h6>) auszuwählen.:nth-of-type()Verwendet
An+BNotation, um Elemente aus einer Liste von Geschwisterelementen auszuwählen, die einem bestimmten Typ aus einer Liste von Geschwisterelementen entsprechen.:nth-last-of-type()Verwendet
An+BNotation, um Elemente aus einer Liste von Geschwisterelementen auszuwählen, die einem bestimmten Typ aus einer Liste von Geschwisterelementen entsprechen und rückwärts von hinten gezählt werden.:first-of-typeEntspricht einem Element, das das erste seiner Geschwister ist und auch einem bestimmten Typ-Selektor entspricht.
:last-of-typeEntspricht einem Element, das das letzte seiner Geschwister ist und auch einem bestimmten Typ-Selektor entspricht.
:only-of-typeEntspricht einem Element, das keine Geschwister des gewählten Typ-Selektors hat.
Schattenstrukturale Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf das Schatten-DOM.
:hostEntspricht dem Schatten-Host des Schattenbaums.
:host()Entspricht einem Element, das
:hostentspricht und einem der Selektoren in der bereitgestellten Liste entspricht.:host-context()Wählt Elemente außerhalb des Schattenbaums im Kontext des Schatten-Hosts aus.
:has-slottedEntspricht Schlitz-Elementen, denen Inhalt zugewiesen wurde.
Benutzeraktions-Pseudo-Klassen
Diese Pseudo-Klassen erfordern eine Interaktion des Benutzers, damit sie angewendet werden können, wie z.B. das Halten eines Mauszeigers über ein Element.
:hoverEntspricht, wenn ein Benutzer ein Element mit einem Zeigegerät kennzeichnet, wie das Halten des Mauszeigers über das Element.
:activeEntspricht, wenn ein Element vom Benutzer aktiviert wird. Zum Beispiel, wenn das Element angeklickt wird.
:focusEntspricht, wenn ein Element den Fokus hat.
:focus-visibleEntspricht, wenn ein Element den Fokus hat und der Benutzeragent identifiziert, dass das Element sichtbar fokussiert sein sollte.
:focus-withinEntspricht einem Element, auf das
:focusangewendet wird, plus jedem Element, das einen Nachfahren hat, auf den:focusangewendet wird.:target-currentEntspricht dem
::scroll-markerPseudo-Element einerscroll-marker-group, zu der aktuell gescrollt wird, in anderen Worten, demaktiven Scroll-Marker.
Funktionale Pseudo-Klassen
Diese Pseudo-Klassen akzeptieren eineSelektorliste oder einenachgiebige Selektorliste als Parameter.
:is()Die Matches-Any Pseudo-Klasse entspricht jedem Element, das einem der Selektoren in der bereitgestellten Liste entspricht. Die Liste ist nachgiebig.
:not()Die Negations- oder Matches-None-Pseudo-Klasse repräsentiert jedes Element, das nicht durch ihr Argument dargestellt wird.
:where()Die Spezifitätsanpassungs-Pseudo-Klasse entspricht jedem Element, das einem der Selektoren in der bereitgestellten Liste entspricht, ohne Spezifitätsgewicht hinzuzufügen. Die Liste ist nachgiebig.
:has()Die relationale Pseudo-Klasse repräsentiert ein Element, wenn einer der relativen Selektoren mit dem angehängten Element übereinstimmt.
Benutzerdefinierte Zustands-Pseudo-Klassen
Diese Pseudo-Klassen gelten für benutzerdefinierte Elemente.
:state()Entspricht benutzerdefinierten Elementen, die den angegebenen benutzerdefinierten Zustand haben.
Seiten-Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf Seiten in einem gedruckten Dokument und werden mit der@page Regel verwendet.
Ansichtsübergangs-Pseudo-Klassen
Diese Pseudo-Klassen beziehen sich auf Elemente, die an einemAnsichtsübergang beteiligt sind.
:active-view-transitionEntspricht dem Wurzelelement eines Dokuments, wenn einAnsichtsübergang im Gange ist (aktiv) und hört auf zu entsprechen, wenn der Übergang abgeschlossen ist.
:active-view-transition-type()Entspricht dem Wurzelelement eines Dokuments, wenn ein bestimmterAnsichtsübergang im Gange ist (aktiv) und hört auf zu entsprechen, wenn der Übergang abgeschlossen ist.
Syntax
selector:pseudo-class { property: value;}Wie bei regulären Klassen können Sie beliebig viele Pseudo-Klassen in einem Selektor verketten.
Alphabetisches Verzeichnis
Pseudo-Klassen, die durch eine Reihe von CSS-Spezifikationen definiert werden, umfassen die folgenden:
A
B
:blank(Eingabe)Experimentell:blank(Seite):buffering
C
D
E
F
H
I
L
M
N
O
P
R
S
T
U
V
W
Nicht-standardisierte Pseudo-Klassen
Nicht-standardisierte, herstellerspezifische Pseudo-Klassen beinhalten:
-moz- Präfix
Spezifikationen
| Specification |
|---|
| HTML> # pseudo-classes> |
| Selectors Level 4> |
| CSS Scoping Module Level 1> |
| CSS Paged Media Module Level 3> |