feat: clientarea 全面改为 VMRack 浅色风格
All checks were successful
continuous-integration/drone/push Build is passing

- 基础层: #0d1117 → #F5F7FA 浅灰背景
- 顶栏: 暗色毛玻璃 → 白色实底
- 侧边栏: 白色 + 蓝色胶囊选中
- 主内容区: 暗色 → #F5F7FA + 白色卡片 + 圆角阴影
- Element UI: 全部组件从暗色改为浅色
- 滚动条/弹窗/表格/按钮等全面适配浅色主题
This commit is contained in:
yiqiu
2026-03-20 08:02:38 +08:00
parent 6fbbda60d5
commit f9c0319b0c

View File

@@ -9,16 +9,16 @@
/* ============ 基础层 ============ */
html, body {
background-color: #0d1117 !important;
color: #E6E8EB !important;
background-color: #F5F7FA !important;
color: #1a1a1a !important;
}
#mainLoading {
background: #0d1117 !important;
background: #FFFFFF !important;
}
#mainLoading.pro-des::before {
background: #0d1117 !important;
background: #FFFFFF !important;
}
.template:first-child {
@@ -107,10 +107,10 @@ html, body {
/* ============ 顶栏 ============ */
.el-header {
background: rgba(13, 17, 23, 0.85) !important;
backdrop-filter: blur(12px) !important;
box-shadow: 0 1px 0 rgba(255,255,255,0.04) !important;
border-bottom: 1px solid rgba(255,255,255,0.04);
background: #FFFFFF !important;
backdrop-filter: none !important;
box-shadow: 0 1px 0 rgba(0,0,0,0.06) !important;
border-bottom: 1px solid rgba(0,0,0,0.06);
}
.el-header .search-value,
@@ -119,71 +119,82 @@ html, body {
}
.header-right .header-right-item .el-dropdown-header .head-box {
background: #1c2028 !important;
background: #F5F7FA !important;
}
.header-right .header-right-item .un-login {
color: #8B949E !important;
color: #5f6368 !important;
}
.header-right .header-right-item .cloum-line {
border-color: rgba(255,255,255,0.08) !important;
border-color: rgba(0,0,0,0.08) !important;
}
.header-left .el-input input {
background: transparent !important;
color: #E6E8EB !important;
color: #1a1a1a !important;
}
/* 顶栏图标颜色 */
.header-right .header-right-item i {
color: #5f6368 !important;
}
.header-right .header-right-item i:hover {
color: #165DFF !important;
}
/* ============ 主内容区 ============ */
.el-main {
background: #0d1117 !important;
background: #F5F7FA !important;
}
.main-card {
background: #0d1117 !important;
color: #E6E8EB !important;
background: #FFFFFF !important;
color: #1a1a1a !important;
border-radius: 12px !important;
box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
}
.main-card-title {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
/* ============ Element UI 输入框 ============ */
.el-input__inner {
background-color: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.06) !important;
color: #E6E8EB !important;
background-color: #FFFFFF !important;
border: 1px solid #DCDFE6 !important;
color: #1a1a1a !important;
transition: border-color 0.2s;
}
.el-input__inner:hover {
border-color: rgba(22, 93, 255, 0.2) !important;
border-color: #B0B3B8 !important;
}
.el-input__inner:focus {
border-color: #165DFF !important;
box-shadow: 0 0 0 2px rgba(22, 93, 255, 0.15) !important;
box-shadow: 0 0 0 2px rgba(22, 93, 255, 0.1) !important;
}
.el-input__inner::placeholder {
color: rgba(139, 148, 158, 0.5) !important;
color: #C0C4CC !important;
}
.el-input.is-disabled .el-input__inner {
background-color: rgba(28, 32, 40, 0.6) !important;
color: rgba(139, 148, 158, 0.5) !important;
background-color: #F5F7FA !important;
color: #C0C4CC !important;
}
.el-input__prefix,
.el-input__suffix {
color: #8B949E !important;
color: #909399 !important;
}
.el-textarea__inner {
background-color: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.06) !important;
color: #E6E8EB !important;
background-color: #FFFFFF !important;
border: 1px solid #DCDFE6 !important;
color: #1a1a1a !important;
}
.el-textarea__inner:focus {
@@ -192,94 +203,74 @@ html, body {
/* ============ Element UI 选择器 ============ */
.el-select-dropdown {
background-color: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.08) !important;
background-color: #FFFFFF !important;
border: 1px solid #E4E7ED !important;
}
.el-select-dropdown__item {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-select-dropdown__item:hover,
.el-select-dropdown__item.hover {
background-color: #21262d !important;
background-color: #F5F7FA !important;
}
.el-select-dropdown__item.selected {
color: #165DFF !important;
}
.el-select-dropdown__empty {
color: #8B949E !important;
}
.el-popper[x-placement^=bottom] .popper__arrow::after {
border-bottom-color: #1c2028 !important;
}
.el-popper[x-placement^=top] .popper__arrow::after {
border-top-color: #1c2028 !important;
}
/* ============ Element UI 表格 ============ */
.el-table {
background-color: transparent !important;
color: #E6E8EB !important;
background-color: #FFFFFF !important;
color: #1a1a1a !important;
}
.el-table::before,
.el-table::after {
background-color: rgba(255,255,255,0.04) !important;
background-color: #EBEEF5 !important;
}
.el-table th,
.el-table th.el-table__cell {
background-color: #161b22 !important;
color: #8B949E !important;
border-bottom: 1px solid rgba(255,255,255,0.06) !important;
background-color: #FAFAFA !important;
color: #5f6368 !important;
border-bottom: 1px solid #EBEEF5 !important;
}
.el-table tr {
background-color: #0d1117 !important;
background-color: #FFFFFF !important;
}
.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell {
background-color: #161b22 !important;
background-color: #FAFAFA !important;
}
.el-table td,
.el-table td.el-table__cell {
border-bottom: 1px solid rgba(255,255,255,0.04) !important;
color: #E6E8EB !important;
border-bottom: 1px solid #EBEEF5 !important;
color: #1a1a1a !important;
}
.el-table__body tr:hover > td.el-table__cell {
background-color: #21262d !important;
background-color: #F5F7FA !important;
}
.el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell {
background-color: #21262d !important;
}
.el-table__empty-block {
background-color: transparent !important;
}
.el-table__empty-text {
color: #8B949E !important;
background-color: #F5F7FA !important;
}
/* ============ Element UI Tabs ============ */
.el-tabs__header {
border-bottom-color: rgba(255,255,255,0.06) !important;
border-bottom-color: #E4E7ED !important;
}
.el-tabs__item {
color: #8B949E !important;
color: #5f6368 !important;
}
.el-tabs__item:hover {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-tabs__item.is-active {
@@ -291,34 +282,46 @@ html, body {
}
.el-tabs__nav-wrap::after {
background-color: rgba(255,255,255,0.06) !important;
background-color: #E4E7ED !important;
}
/* ============ Element UI 弹窗 ============ */
.el-dialog {
background-color: #161b22 !important;
border: 1px solid rgba(255,255,255,0.06);
box-shadow: 0 12px 40px rgba(0,0,0,0.5) !important;
background-color: #FFFFFF !important;
border: none;
box-shadow: 0 12px 40px rgba(0,0,0,0.12) !important;
}
.el-dialog__header {
border-bottom: 1px solid rgba(255,255,255,0.06);
border-bottom: 1px solid #E4E7ED;
}
.el-dialog__title {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-dialog__headerbtn .el-dialog__close {
color: #8B949E !important;
color: #909399 !important;
}
.el-dialog__body {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.dialog-title {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-dialog__headerbtn .el-dialog__close {
color: #909399 !important;
}
.el-dialog__body {
color: #1a1a1a !important;
}
.dialog-title {
color: #1a1a1a !important;
}
.dialog-footer .btn-ok {
@@ -332,23 +335,23 @@ html, body {
}
.dialog-footer .btn-no {
background: #21262d !important;
color: #E6E8EB !important;
border: 1px solid rgba(255,255,255,0.08) !important;
background: #F5F7FA !important;
color: #5f6368 !important;
border: 1px solid #DCDFE6 !important;
}
/* ============ Element UI 按钮 ============ */
.el-button {
background-color: #21262d !important;
border: 1px solid rgba(255,255,255,0.08) !important;
color: #E6E8EB !important;
background-color: #FFFFFF !important;
border: 1px solid #DCDFE6 !important;
color: #5f6368 !important;
}
.el-button:hover,
.el-button:focus {
background-color: #2a313a !important;
border-color: rgba(255,255,255,0.12) !important;
color: #FFFFFF !important;
background-color: #F5F7FA !important;
border-color: #B0B3B8 !important;
color: #1a1a1a !important;
}
.el-button--primary {
@@ -364,7 +367,7 @@ html, body {
}
.el-button--primary.is-plain {
background-color: rgba(22, 93, 255, 0.1) !important;
background-color: rgba(22, 93, 255, 0.06) !important;
border-color: rgba(22, 93, 255, 0.3) !important;
color: #165DFF !important;
}
@@ -377,9 +380,9 @@ html, body {
.el-button.is-disabled,
.el-button.is-disabled:hover {
background-color: rgba(33, 38, 45, 0.5) !important;
color: rgba(139, 148, 158, 0.4) !important;
border-color: rgba(255,255,255,0.04) !important;
background-color: #F5F7FA !important;
color: #C0C4CC !important;
border-color: #E4E7ED !important;
}
/* ============ Element UI 分页 ============ */
@@ -397,9 +400,7 @@ html, body {
}
.el-pager li {
background-color: transparent !important;
color: #8B949E !important;
border-color: rgba(255,255,255,0.08) !important;
border-color: #E4E7ED !important;
}
.el-pager li:hover {
@@ -422,8 +423,8 @@ html, body {
/* ============ Element UI 复选框/单选框 ============ */
.el-checkbox__inner {
background-color: #1c2028 !important;
border-color: rgba(255,255,255,0.15) !important;
background-color: #FFFFFF !important;
border-color: #DCDFE6 !important;
}
.el-checkbox__input.is-checked .el-checkbox__inner {
@@ -432,12 +433,12 @@ html, body {
}
.el-checkbox__label {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-radio__inner {
background-color: #1c2028 !important;
border-color: rgba(255,255,255,0.15) !important;
background-color: #FFFFFF !important;
border-color: #DCDFE6 !important;
}
.el-radio__input.is-checked .el-radio__inner {
@@ -446,7 +447,7 @@ html, body {
}
.el-radio__label {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
/* ============ Element UI 提示/警告 ============ */
@@ -466,29 +467,28 @@ html, body {
}
.el-alert--info {
background-color: rgba(22, 93, 255, 0.08) !important;
border: 1px solid rgba(22, 93, 255, 0.15);
color: #E6E8EB !important;
background-color: rgba(22, 93, 255, 0.06) !important;
border: 1px solid rgba(22, 93, 255, 0.12);
}
/* ============ Element UI 加载 ============ */
.el-loading-mask {
background-color: rgba(13, 17, 23, 0.8) !important;
background-color: rgba(255, 255, 255, 0.8) !important;
}
/* ============ Element UI 分割线 ============ */
.el-divider {
background-color: rgba(255,255,255,0.06) !important;
background-color: #E4E7ED !important;
}
.el-divider--vertical {
background-color: rgba(255,255,255,0.06) !important;
background-color: #E4E7ED !important;
}
/* ============ Element UI Switch ============ */
.el-switch__core {
border-color: rgba(255,255,255,0.1) !important;
background-color: #21262d !important;
border-color: #DCDFE6 !important;
background-color: #DCDFE6 !important;
}
.el-switch.is-checked .el-switch__core {
@@ -498,9 +498,14 @@ html, body {
/* ============ Element UI Popover ============ */
.el-popover {
background: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.08) !important;
color: #E6E8EB !important;
background: #FFFFFF !important;
border: 1px solid #E4E7ED !important;
color: #1a1a1a !important;
}
/* ============ Element UI Form ============ */
.el-form-item__label {
color: #5f6368 !important;
}
/* ============ Element UI Form ============ */
@@ -517,36 +522,36 @@ html, body {
/* ============ Element UI Dropdown ============ */
.el-dropdown-menu {
background-color: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.08) !important;
background-color: #FFFFFF !important;
border: 1px solid #E4E7ED !important;
}
.el-dropdown-menu__item {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-dropdown-menu__item:hover,
.el-dropdown-menu__item--divided:hover {
background-color: #21262d !important;
color: #FFFFFF !important;
background-color: #F5F7FA !important;
color: #165DFF !important;
}
.el-dropdown-menu__item--divided::before {
background-color: rgba(255,255,255,0.06) !important;
background-color: #E4E7ED !important;
}
/* ============ Element UI Message Box ============ */
.el-message-box {
background-color: #161b22 !important;
border: 1px solid rgba(255,255,255,0.08) !important;
background-color: #FFFFFF !important;
border: 1px solid #E4E7ED !important;
}
.el-message-box__title {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-message-box__message {
color: #8B949E !important;
color: #5f6368 !important;
}
/* ============ Element UI Popconfirm ============ */
@@ -572,19 +577,19 @@ html, body {
/* 消息面板 */
.top-msg-box {
background: #1c2028 !important;
background: #FFFFFF !important;
}
.top-msg-box .msg-top .msg-top-left {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.top-msg-box .msg-list .msg-item:hover {
background: #21262d !important;
background: #F5F7FA !important;
}
.top-msg-box .msg-list .msg-item .msg-item-right .msg-item-right-top {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.top-msg-box .msg-list .msg-item .msg-item-right .msg-item-right-bottom {
@@ -593,8 +598,8 @@ html, body {
/* 支付弹窗 */
.pay-dialog .dia-title {
background: #161b22 !important;
color: #E6E8EB !important;
background: #FAFAFA !important;
color: #1a1a1a !important;
}
/* 蓝色文字链接 */
@@ -605,12 +610,12 @@ html, body {
/* 通用卡片标题 */
.title-text {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
/* 优惠码弹窗 */
.discount-content {
background: #1c2028 !important;
background: #FFFFFF !important;
}
/* 滚动条暗色 */
@@ -624,42 +629,42 @@ html, body {
}
::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.1);
background: rgba(0,0,0,0.12);
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(255,255,255,0.2);
background: rgba(0,0,0,0.2);
}
/* ============ Element UI DatePicker ============ */
.el-date-picker,
.el-picker-panel {
background: #1c2028 !important;
border: 1px solid rgba(255,255,255,0.08) !important;
color: #E6E8EB !important;
background: #FFFFFF !important;
border: 1px solid #E4E7ED !important;
color: #1a1a1a !important;
}
.el-date-picker .el-picker-panel__header,
.el-date-range-picker .el-picker-panel__header {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-date-table th {
color: #8B949E !important;
border-bottom-color: rgba(255,255,255,0.06) !important;
color: #5f6368 !important;
border-bottom-color: #EBEEF5 !important;
}
.el-date-table td.normal span,
.el-date-table td span {
color: #E6E8EB !important;
color: #1a1a1a !important;
}
.el-date-table td.disabled span {
color: rgba(139,148,158,0.3) !important;
color: #C0C4CC !important;
}
.el-picker-panel__footer {
background: #161b22 !important;
border-top-color: rgba(255,255,255,0.06) !important;
background: #FAFAFA !important;
border-top-color: #E4E7ED !important;
}