refactor(miniprogram): 全面接入 Design Token — 68 SCSS 文件 px→var(--tk-*)
Some checks failed
CI / security-audit (push) Has been cancelled
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled

- 重写 tokens.scss:校准 10 级字号 + 4 结构 token 匹配实际设计值
- 更新 mixins.scss:4 个 mixin 引用 token 替代硬编码
- 68 SCSS 文件全面迁移:font-size px → var(--tk-font-*),辅助文字色 → var(--tk-text-secondary)
- 清理 12 个页面的本地 mixin 重复定义
- elder-mode.scss 从 530 行缩减至 ~120 行:删除所有字号/颜色覆写,仅保留结构布局
- Token 覆盖率:634 引用 / 仅 3 个特殊硬编码值(72px/80px/21px)

关怀模式通过 CSS 变量级联自动生效,消除"打地鼠"问题。
This commit is contained in:
iven
2026-05-09 23:53:07 +08:00
parent 257ca94a25
commit 890c132890
74 changed files with 1127 additions and 1688 deletions

View File

@@ -1,34 +1,5 @@
@import '../../styles/variables.scss';
@mixin serif-number {
font-family: 'Georgia', 'Times New Roman', serif;
font-variant-numeric: tabular-nums;
}
@mixin section-title {
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 30px;
font-weight: bold;
color: $tx;
margin-bottom: 20px;
display: block;
}
@mixin tag($bg, $color) {
display: inline-block;
padding: 4px 12px;
border-radius: 8px;
font-size: 22px;
font-weight: 500;
background: $bg;
color: $color;
}
@mixin flex-center {
display: flex;
align-items: center;
justify-content: center;
}
@import '../../styles/mixins.scss';
.device-sync-page {
min-height: 100vh;
@@ -43,9 +14,8 @@
}
.sync-header-title {
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 40px;
font-weight: bold;
@include section-title;
color: $card;
}
.sync-section {
@@ -72,20 +42,17 @@
margin-bottom: 20px;
color: $pri;
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 36px;
font-size: var(--tk-font-num-lg);
font-weight: bold;
}
.sync-hero-title {
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 34px;
font-weight: bold;
color: $tx;
@include section-title;
margin-bottom: 8px;
}
.sync-hero-desc {
font-size: 26px;
font-size: var(--tk-font-h1);
color: $tx2;
}
@@ -110,7 +77,7 @@
.sync-action-text {
color: $card;
font-size: 28px;
font-size: var(--tk-font-body-lg);
font-weight: 500;
}
@@ -120,7 +87,7 @@
.sync-section-title {
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 28px;
font-size: var(--tk-font-body-lg);
font-weight: bold;
color: $tx;
margin-bottom: 12px;
@@ -144,19 +111,19 @@
}
.sync-device-name {
font-size: 28px;
font-size: var(--tk-font-body-lg);
font-weight: 500;
color: $tx;
}
.sync-device-adapter {
font-size: 22px;
color: $tx3;
font-size: var(--tk-font-body);
color: var(--tk-text-secondary);
margin-top: 4px;
}
.sync-device-rssi {
font-size: 22px;
font-size: var(--tk-font-body);
color: $tx2;
}
@@ -183,7 +150,7 @@
}
.sync-status-text {
font-size: 28px;
font-size: var(--tk-font-body-lg);
color: $tx;
}
@@ -208,12 +175,12 @@
}
.sync-reading-type {
font-size: 26px;
font-size: var(--tk-font-h1);
color: $tx2;
}
.sync-reading-value {
font-size: 28px;
font-size: var(--tk-font-body-lg);
font-weight: bold;
color: $pri;
@include serif-number;
@@ -222,8 +189,8 @@
.sync-readings-count {
display: block;
margin-top: 12px;
font-size: 22px;
color: $tx3;
font-size: var(--tk-font-body);
color: var(--tk-text-secondary);
text-align: center;
}
@@ -240,7 +207,7 @@
}
.sync-error-text {
font-size: 26px;
font-size: var(--tk-font-h1);
color: $dan;
}
@@ -250,7 +217,7 @@
}
.sync-loading-text {
font-size: 28px;
font-size: var(--tk-font-body-lg);
color: $tx2;
}
@@ -273,20 +240,17 @@
@include flex-center;
color: $acc;
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 36px;
font-size: var(--tk-font-num-lg);
font-weight: bold;
margin-bottom: 16px;
}
.sync-result-title {
font-family: 'Georgia', 'Times New Roman', serif;
font-size: 34px;
font-weight: bold;
color: $tx;
@include section-title;
margin-bottom: 8px;
}
.sync-result-count {
font-size: 26px;
font-size: var(--tk-font-h1);
color: $tx2;
}