theme 的實作技巧
🌑 dark mode
這段 CSS:
:root {
color-scheme: light;
}
.my-app-dark {
color-scheme: dark;
}
是在設定 瀏覽器的預設 UI 色彩傾向(scrollbar、表單元件等),也可能影響某些使用 currentColor 的元件表現,但它本身不會改變你的網站主題或 PrimeVue 的樣式,除非你搭配 CSS 變數和其他樣式邏輯來一起使用。
:root {
color-scheme: light;
}
- 這是預設的 color-scheme。
- 會告訴瀏覽器「你應該用淺色(light)風格渲染像是:
<input>、<select>等原生元件- scrollbars
- 系統介面元素」
.my-app-dark { color-scheme: dark; }
- 當某個元素(例如 )有這個 class 時,瀏覽器會用 dark 模式風格渲染原生元素。
🧪 範例應用
你可能會搭配主題切換來使用這段 CSS:
<!-- dark 模式 -->
<body class="my-app-dark">...</body>
.my-app-dark {
color-scheme: dark;
--surface-color: #1e1e1e;
--text-color: #ffffff;
/** 覆蓋更多自訂變數 */
}
這樣就能搭配 color-scheme 改變瀏覽器渲染方式,同時透過自訂變數控制你的主題外觀。