跳至主要內容

指南 - 主题样式

Young Kbt指南指南大约 2 分钟约 613 字

介绍

Admin 内置了主题色、暗黑模式、灰色模式、色弱模式等主题配置。

Admin 的样式相关代码在 src/styles 目录下。

├── styles
    ├─ element-dark.scss # 自定义 element 暗黑模式样式
    ├─ index.scss # 自定义全局元素样式
    ├─ normalize.css # 默认的基本元素样式
    ├─ transition.scss # 自定义全局动画样式
    ├─ variables.module.scss # 布局主题样式
    ├─ variables.module.scss.d.ts # 布局主题样式 TS 提示
    ├─ variables.scss # 自定义全局变量,文件里填写的变量在编译的时候内置到系统

主题色

Admin 点击右上角头像,然后点击我的设置,就可以看到全局主题颜色选择器,有如下预定义主题颜色:

// 预定义主题颜色
const colorList = [
  "#168BF7", 
  "#DAA96E",
  "#0C819F",
  "#409EFF",
  "#27ae60",
  "#ff5c93",
  "#e74c3c",
  "#fd726d",
  "#f39c12",
  "#9b59b6",
];

当你希望更改这些预定义主题颜色的时候,前往 src/layout/components/ThemeDrawer/index.vue 的 304 行左右找到上面的代码进行修改。

暗黑模式

Admin 适配了 Element Plus 的暗黑模式,可以在「右上角头像 - 我的设置 - 暗黑模式」进行切换暗黑模式。

Admin 默认不开启暗黑模式,如果希望默认开启暗黑模式,则在 src/config/settings 将 isDark 改为 true。

适配

如果在暗黑模式下,自己写的组件没有适配样式,则在 src/styles/element-dark.scss 里进行适配:

html.dark {
  // 适配样式
}

组件切换

暗黑模式除了通过我的设置来切换,也可以通过页面的按钮来切换,Admin 封装了暗黑模式切换的组件,在 /src/components/SwitchDark 下,是一个 Switch 开关。

灰色模式、色弱模式

Admin 适配了灰色模式、色弱模式,可以在「右上角头像 - 我的设置 - 灰色模式、色弱模式」进行切换灰色模式、色弱模式。

Admin 默认不开启灰色模式、色弱模式,如果希望默认开启灰色模式、色弱模式,则在 src/config/settings 将 isWeak、isGrey 改为 true。

灰色模式、色弱模式 采用了 CSS3 的 filter 属性来全局设置,俗称 滤镜,如果你想自定义更多类似的全局颜色模式,可以学习 filter 的其他用法。

灰色模式、色弱模式只是 filter 属性的其中两个应用。

源码

主题色、暗黑模式、灰色模式、色弱模式等主题的功能在 src/hooks/useTheme.ts 里看到代码逻辑。