Bugünkü projede CSS'de değişkenler tanımlayacağız ve bu değişkenleri JavaScript ile değiştirerek, demosunu burada görebileceğiniz bir proje elde edeceğiz.
Başlangıç dosyalarını bulabileceğiniz repom: js-30 | github
1. CSS'de değişkenler
CSS'de değişkenler kullanarak aynı değeri tekrar tekrar yazmaktan kurtulabilir, ve güncellerken tek bir yerden güncelleyebiliriz.
Örneğin aşağıda :root seçicisini (belgenin en üst düzey ögesini hedefleyen bir css seçicisi) kullanarak yazı rengini belirlediğim bir değişken kullandım. Eğer bu rengi daha sonra değiştirmek istersem tek bir yerden değiştirmem yeterli olacaktır.
Projedede değişkenleri kullanarak img ve .hl için değerler tanımlayalım:
Görüleceği gibi ortak olarak kullanılan base değişkeni sayesinde hem resmin arkaplan rengi hem de hl sınıfındaki yazı rengi aynı değere sahip.
2. JS ile değişkenleri değiştirmek
HTML dosyasını incelediğimizde 3 inputumuzun olduğunu görüyoruz. Bu inputları JS tarafına bağlayarak güncellendiklerinde CSS değişkenlerini güncelleyelim:
Bu projeden öğrendiklerim
:root içinde tanımlanmış css değişkenlerini değiştirmek için document.documentElement.style.setProperty('--degisken-adi','degiskendegeri') kullanılabilir.
event listener eklediğimiz elementteki handler fonksiyonunda this ile elementin kendisine erişilebilir.