Frage Wie ändere ich den CSS-Pseudoklassenstil mit js? Aber js hat keinen Pseudoklassenselektor. Was sollen wir also tun? Im Internet gibt es zahlreiche Methoden, wie etwa das Wechseln von Elementklassen, das dynamische Einfügen neuer Stile in Stile usw. Hier ist eine andere Methode, die darin besteht, die CSS-Variable (var) festzulegen und diese Variable über JS zu ändern, um dies zu erreichen. Beispiel: Ändern der Hover-Hintergrundfarbe eines Div <!-- css --> <style type="text/css"> :Wurzel { --divHoverColor: rot; } div { Breite: 100px; Höhe: 100px; Hintergrund: Biskuitporzellan; } div:hover { Hintergrund: var(--divHoverColor); } </Stil> <!-- html --> <div beiKlick="onDivClick('grün')"/> <!-- js --> <Skripttyp="text/javascript"> Funktion onDivClick(Wert){ document.documentElement.style.setProperty('--divHoverColor', Wert); } </Skript> Lernen wir also CSS-Variablen kennen. 1. Grundlegende Verwendung Lokale Variablen div { --masterColor: rot; Hintergrund: var(--masterColor); } Globale Variablen /* Bei HTML bezieht sich :root auf das <html>-Element*/ :Wurzel { --masterColor: rot; } div { Hintergrund: var(--masterColor); } 2. Syntax var( <Name der benutzerdefinierten Eigenschaft> [, <Deklarationswert> ]? ) <custom-property-name> : Name der benutzerdefinierten Eigenschaft <declaration-value> : Deklarationswert (Fallback-Wert) Beispiel: div { /* --masterColor ist nicht definiert, daher ist die Hintergrundfarbe rot Es können mehrere durch Kommas getrennte Deklarationswerte definiert werden, var(--masterColor, red, green) */ Hintergrund: var(--masterColor, rot); } Auf Variablen kann mit var() verwiesen werden. Beispiel: div { --masterColor: rot; --bgColor:var(--masterColor) } Hinweis: Variablen können nicht in Attributnamen verwendet werden. Fehlerbeispiel: div { --bg: Hintergrund; var(--bg): rot; } 3. Browser-Unterstützung Kann ich Verwenden der @support-Erkennung @supports ( (--masterColor: rot)) { /* unterstützt */ } @supports ( nicht (--masterColor: rot)) { /* nicht unterstützt */ } Verwenden der JS-Erkennung const isSupported = window.CSS && window.CSS.supports && window.CSS.supports('--masterColor', 'rot'); if (wird unterstützt) { /* unterstützt */ } anders { /* nicht unterstützt */ } siehe MDN Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. |
<<: HTML-, CSS- und JS-Kompatibilitätsbaum (IE, Firefox, Chrome)
>>: Vorteile und Nachteile des MySQL Advanced Learning Index sowie Nutzungsregeln
Auf dem Server läuft ein Taskprozess. Wenn wir ih...
In diesem Artikel finden Sie das Installations- u...
Dokumenthinweise mit dem Attribut show-header <...
Datensortierung aufsteigend, absteigend 1. Sortie...
Inhaltsverzeichnis 1. Bilder 1. Was ist ein Spieg...
Über wen Zeigt die am System angemeldeten Benutze...
Der Inhalt der Web-Frontend-Entwicklung umfasst h...
Werfen wir einen Blick auf ufw (Uncomplicated Fir...
So sieht schöner HTML-Code aus. So schreiben Sie ...
Inhaltsverzeichnis Experimentelle Umgebung Instal...
Inhaltsverzeichnis Basisversion Schritt 1: Axios ...
Kürzlich wurde die neue Anforderung „Front-End-Ca...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1. V8-Quelle 2. V8-Serviceziel...
1. Erstellen Sie zunächst den entsprechenden Ordn...