用途:为 Element Plus(2.2.0 起支持)应用实现和自定义暗色模式,包括启用、明暗主题切换、颜色定制与偏好持久化。
主要能力:提供静态暗色、切换式暗色、手动切换、跟随系统偏好四种实现方式;支持通过 CSS 变量与 SCSS 变量覆盖暗色配色;给出背景、文字、边框、填充等可用暗色变量及默认值;包含持久化、过渡动画、自定义组件样式与图片调整等实践建议。
必要用法:在 HTML 元素加 dark 类,并导入 import 'element-plus/theme-chalk/dark/css-vars.css'。切换可用 VueUse 的 useDark 与 useToggle,或自行监听并增删 dark 类;跟随系统偏好可用 window.matchMedia('(prefers-color-scheme: dark)')。自定义可新建 CSS 文件覆盖 html.dark 下的 --el-* 变量并在官方暗色 CSS 之后导入,或用 SCSS @forward 覆盖变量。
适用场景:Vue + Element Plus 项目需要暗色主题、主题切换按钮或品牌化暗色配色时。
限制:需 Element Plus 2.2.0 及以上;暗色基于 CSS 变量,不支持 IE11;自定义颜色可能需额外测试;部分第三方组件可能需手动适配暗色样式。