目的
採用css
變數來切換應用的主題。
手段
1 定義好主題需要的css
變數
/* theme.css */
.light {
--custom-background: white;
}
.dark {
--custom-background: black;
}
2 全域性引入上面定義的css變數
/* index.js */
import './theme.css';
3 實現切換主題class
的邏輯
/* App.js */
document.documentElement.className = 'light';
or
document.documentElement.className = 'dark';
4 在應用中各個位置引用全域性引入的css
變數
/*app.css*/
body {
background: var(--theme-background);
}
這樣,當html
元素的class
在light
和dark
之間切換時,css
變數--custom-background
的值也會在white
和black
之間切換,至此,完成css
變數的主題切換。