variables.module.scss 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. // base color
  2. $blue: #324157;
  3. $light-blue: #333c46;
  4. $red: #C03639;
  5. $pink: #E65D6E;
  6. $green: #30B08F;
  7. $tiffany: #4AB7BD;
  8. $yellow: #FEC171;
  9. $panGreen: #30B08F;
  10. // 默认主题变量
  11. $menuText: #bfcbd9;
  12. $menuActiveText: #409eff;
  13. $menuBg: #304156;
  14. $menuHover: #263445;
  15. // 浅色主题theme-light
  16. $menuLightBg: #ffffff;
  17. $menuLightHover: #f0f1f5;
  18. $menuLightText: #303133;
  19. $menuLightActiveText: #409EFF;
  20. // 基础变量
  21. $base-sidebar-width: 200px;
  22. $sideBarWidth: 200px;
  23. // 菜单暗色变量
  24. $base-menu-color: #bfcbd9;
  25. $base-menu-color-active: #f4f4f5;
  26. $base-menu-background: #304156;
  27. $base-sub-menu-background: #1f2d3d;
  28. $base-sub-menu-hover: #001528;
  29. // 组件变量
  30. $--color-primary: #409EFF;
  31. $--color-success: #67C23A;
  32. $--color-warning: #E6A23C;
  33. $--color-danger: #F56C6C;
  34. $--color-info: #909399;
  35. :export {
  36. menuText: $menuText;
  37. menuActiveText: $menuActiveText;
  38. menuBg: $menuBg;
  39. menuHover: $menuHover;
  40. menuLightBg: $menuLightBg;
  41. menuLightHover: $menuLightHover;
  42. menuLightText: $menuLightText;
  43. menuLightActiveText: $menuLightActiveText;
  44. sideBarWidth: $sideBarWidth;
  45. // 导出基础颜色
  46. blue: $blue;
  47. lightBlue: $light-blue;
  48. red: $red;
  49. pink: $pink;
  50. green: $green;
  51. tiffany: $tiffany;
  52. yellow: $yellow;
  53. panGreen: $panGreen;
  54. // 导出组件颜色
  55. colorPrimary: $--color-primary;
  56. colorSuccess: $--color-success;
  57. colorWarning: $--color-warning;
  58. colorDanger: $--color-danger;
  59. colorInfo: $--color-info;
  60. }
  61. // CSS变量定义
  62. :root {
  63. /* 亮色模式变量 */
  64. --sidebar-bg: #{$menuBg};
  65. --sidebar-text: #{$menuText};
  66. --menu-hover: #{$menuHover};
  67. --navbar-bg: #ffffff;
  68. --navbar-text: #303133;
  69. /* splitpanes default-theme 变量 */
  70. --splitpanes-default-bg: #ffffff;
  71. }
  72. // 暗黑模式变量
  73. html.dark {
  74. /* 默认通用 */
  75. --el-bg-color: #141414;
  76. --el-bg-color-overlay: #1d1e1f;
  77. --el-text-color-primary: #ffffff;
  78. --el-text-color-regular: #d0d0d0;
  79. --el-border-color: #434343;
  80. --el-border-color-light: #434343;
  81. /* primary */
  82. --primary-bg: #18212b;
  83. /* 侧边栏 */
  84. --sidebar-bg: #141414;
  85. --sidebar-text: #ffffff;
  86. --menu-hover: #2d2d2d;
  87. --menu-active-text: #{$menuActiveText};
  88. /* 顶部导航栏 */
  89. --navbar-bg: #141414;
  90. --navbar-text: #ffffff;
  91. --navbar-hover: #141414;
  92. /* 标签栏 */
  93. --tags-bg: #141414;
  94. --tags-item-bg: #1d1e1f;
  95. --tags-item-border: #303030;
  96. --tags-item-text: #d0d0d0;
  97. --tags-item-hover: #2d2d2d;
  98. --tags-close-hover: #64666a;
  99. /* splitpanes 组件暗黑模式变量 */
  100. --splitpanes-bg: #141414;
  101. --splitpanes-border: #303030;
  102. --splitpanes-splitter-bg: #1d1e1f;
  103. --splitpanes-splitter-hover-bg: #2d2d2d;
  104. /* blockquote 暗黑模式变量 */
  105. --blockquote-bg: #1d1e1f;
  106. --blockquote-border: #303030;
  107. --blockquote-text: #d0d0d0;
  108. /* Cron 时间表达式 模式变量 */
  109. --cron-border: #303030;
  110. /* splitpanes default-theme 暗黑模式变量 */
  111. --splitpanes-default-bg: #141414;
  112. /* 侧边栏菜单覆盖 */
  113. .sidebar-container {
  114. .el-menu-item, .menu-title {
  115. color: var(--el-text-color-regular);
  116. }
  117. & .theme-dark .nest-menu .el-sub-menu>.el-sub-menu__title,
  118. & .theme-dark .el-sub-menu .el-menu-item {
  119. background-color: var(--el-bg-color) !important;
  120. }
  121. }
  122. /* 顶部栏栏菜单覆盖 */
  123. .el-menu--horizontal {
  124. .el-menu-item {
  125. &:not(.is-disabled) {
  126. &:hover,
  127. &:focus {
  128. background-color: var(--navbar-hover) !important;
  129. }
  130. }
  131. }
  132. }
  133. /* 分割窗格覆盖 */
  134. .splitpanes {
  135. background-color: var(--splitpanes-bg);
  136. .splitpanes__pane {
  137. background-color: var(--splitpanes-bg);
  138. border-color: var(--splitpanes-border);
  139. }
  140. .splitpanes__splitter {
  141. background-color: var(--splitpanes-splitter-bg);
  142. border-color: var(--splitpanes-border);
  143. &:hover {
  144. background-color: var(--splitpanes-splitter-hover-bg);
  145. }
  146. &:before,
  147. &:after {
  148. background-color: var(--splitpanes-border);
  149. }
  150. }
  151. }
  152. /* 按钮样式覆盖 */
  153. .el-button--primary.is-plain {
  154. background-color: var(--primary-bg);
  155. border: 1px solid var(--el-color-primary-light-2);
  156. color: var(--el-color-primary-light-2);
  157. &:hover {
  158. background-color: var(--el-button-hover-bg-color);
  159. border-color: var(--el-button-hover-border-color);
  160. color: var(--el-button-hover-text-color);
  161. }
  162. &.is-disabled {
  163. background-color: var(--link-active-bg-color);
  164. border-color: var(--el-color-primary-light-3);
  165. color: var(--el-color-primary-light-3);
  166. opacity: 0.5;
  167. }
  168. }
  169. /* primary tag 样式覆盖 */
  170. .el-tag--primary {
  171. background-color: var(--primary-bg);
  172. border: 1px solid var(--el-border-color-light);
  173. color: var(--el-color-primary);
  174. }
  175. /* 表格样式覆盖 */
  176. .el-table {
  177. --el-table-header-bg-color: var(--el-bg-color-overlay) !important;
  178. --el-table-header-text-color: var(--el-text-color-regular) !important;
  179. --el-table-border-color: var(--el-border-color-light) !important;
  180. --el-table-row-hover-bg-color: var(--el-bg-color-overlay) !important;
  181. .el-table__header-wrapper, .el-table__fixed-header-wrapper {
  182. th {
  183. background-color: var(--el-bg-color-overlay, #f8f8f9) !important;
  184. color: var(--el-text-color-regular, #515a6e);
  185. }
  186. }
  187. }
  188. /* 树组件高亮样式覆盖 */
  189. .el-tree {
  190. .el-tree-node.is-current > .el-tree-node__content {
  191. background-color: var(--el-bg-color-overlay) !important;
  192. color: var(--el-color-primary);
  193. }
  194. .el-tree-node__content:hover {
  195. background-color: var(--el-bg-color-overlay);
  196. }
  197. }
  198. /* 下拉菜单样式覆盖 */
  199. .el-dropdown-menu__item:not(.is-disabled):focus, .el-dropdown-menu__item:not(.is-disabled):hover{
  200. background-color: var(--navbar-hover) !important;
  201. }
  202. /* blockquote样式覆盖 */
  203. blockquote {
  204. background-color: var(--blockquote-bg) !important;
  205. border-left-color: var(--blockquote-border) !important;
  206. color: var(--blockquote-text) !important;
  207. }
  208. /* 时间表达式标题样式覆盖 */
  209. .popup-result .title {
  210. background: var(--cron-border);
  211. }
  212. }