Auswählen von Elementen basierend auf Zustandsbeziehungen in CSS
Problem: Wählen Sie andere Elemente im DOM basierend auf einem angegebenen aus Zustand eines Elements.
Bedingungen für Auswählen:
Aktuelle Einschränkungen:
Leider können diese Bedingungen nicht alle mit aktuellen CSS-Selektoren erfüllt werden, aus folgenden Gründen:
Zukünftige Funktionen:
Der kommende Standard CSS Selectors 4 führt Funktionen ein, die diese Einschränkungen beheben :
Lösung des Beispielproblems:
Mit :has() und :matches() können wir das Beispielproblem in CSS-Selektoren lösen 4:
section:has(> div[data-status~=finished]) + section > div:matches(.blink, .spin) { /* styles for targeted elements */ }
Alternativer Ansatz mit JavaScript:
Während diese Funktionen noch nicht von allen Browsern unterstützt werden, können Sie derzeit JavaScript verwenden, um Elemente mit :has auszuwählen ():
$('section:has(> div[data-status~=finished]) + section > div').filter('.blink, .spin').css('color', 'red');
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von CSS-Selektoren DOM-Elemente basierend auf dem Status eines anderen Elements auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!