Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie formatiere ich CSS-Pseudoelemente dynamisch mit JavaScript?

Susan Sarandon
Freigeben: 2024-11-15 20:40:02
Original
506 Leute haben es durchsucht

How to Dynamically Style CSS Pseudo-Elements with JavaScript?

Dynamisches CSS-Pseudoelement-Styling mit JavaScript

Ist es möglich, CSS-Pseudoelement-Stile mit JavaScript zu ändern? Beispielsweise können Sie die Farbe der Bildlaufleiste dynamisch anpassen oder ausblenden. Versuche, dies mit diesen Skripten zu tun, haben jedoch zu einem „TypeError: Cannot read property ‚style‘ of null“ geführt.

LÖSUNG: Einführung von CSS-Variablen

While Da die browserübergreifende Interoperabilität möglicherweise keine Priorität hat, bietet die Verwendung von CSS-Variablen (CSS Vars) eine effektive Lösung in WebKit-Browsern. Mit dieser Methode können Sie Variablen in CSS deklarieren und sie mithilfe von JavaScript dynamisch ändern.

Definieren Sie in Ihrem CSS die Hintergrundfarbe der Bildlaufleiste als Variable:

#editor {
  --scrollbar-background: #ccc;
}
Nach dem Login kopieren

Dann formatieren Sie den Bildlaufleisten-Daumen Verwenden der Variablen:

#editor::-webkit-scrollbar-thumb:vertical {
  /* Fallback */
  background-color: #ccc;
  /* Dynamic value */
  background-color: var(--scrollbar-background);
}
Nach dem Login kopieren

In JavaScript können Sie den Variablenwert im #Editor ändern Element:

document.getElementById("#editor").style.setProperty('--scrollbar-background', localStorage.getItem("Color"));
Nach dem Login kopieren

Mit diesem Ansatz können Sie die Farbe der Bildlaufleiste dynamisch ändern, ohne direkt auf den Stil des Pseudoelements zuzugreifen, wodurch das „TypeError“-Problem vermieden wird.

Weitere Beispiele finden Sie unter diese Ressource zur CSS-Variablenmanipulation mit JavaScript: https://eager.io/blog/communicating-between-javascript-and-css-with-css-variables/

Das obige ist der detaillierte Inhalt vonWie formatiere ich CSS-Pseudoelemente dynamisch mit JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage