Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Mengubah Pembolehubah CSS Secara Dinamik Menggunakan JavaScript?
Mengedit Pembolehubah CSS dengan JS
Anda sedang cuba mengedit pembolehubah CSS untuk mengawal penggayaan projek anda secara dinamik. Walaupun anda telah menentukan pembolehubah seperti --main-background-image dan --main-text-color, anda menghadapi ralat semasa cuba menukar nilainya menggunakan atribut.
Punca Punca
Ralat yang anda hadapi adalah disebabkan oleh penggunaan kaedah setAttribute yang salah untuk menukar CSS pembolehubah.
Penyelesaian
Terdapat tiga kaedah untuk mengedit pembolehubah CSS dengan JS:
style.cssTeks:
document.documentElement.style.cssText = "--main-background-color: red";
style.setProperty:
document.documentElement.style.setProperty("--main-background-color", "green");
setAttribute (dengan atribut "style"):
document.documentElement.setAttribute("style", "--main-background-color: green");
Dalam coretan kod anda, gantikan baris yang diulas dengan salah satu kaedah di atas untuk berjaya mengedit pembolehubah CSS.
Demo
Pertimbangkan perkara berikut contoh:
html { --main-background-color: rgba(0,0,0,.25); } body { background-color: var(--main-background-color); }
window.onload = function() { setTimeout(function() { document.documentElement.style.cssText = "--main-background-color: red"; }, 2000); };
Dalam demo ini, nilai --main-background-color bertukar kepada merah dua saat selepas halaman dimuatkan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Pembolehubah CSS Secara Dinamik Menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!