zhangxiang
|
d959fa9a81
|
refactor(theme): 营销页 bg-white token 化(暗黑模式 Phase 2 · marketing 批次)
问题:Tailwind 原生 bg-white 是硬编码值,深色主题下不翻转,
导致整页/整 section 恒为纯白,与转深色的页头页脚割裂。
(globals.css:--color-bg-primary-rgb 浅色 255 255 255 → 深色 10 14 20)
改动:10 文件 67 处 bg-white → 项目 token,按语义二分类
- bg-bg-primary (33 处):页面/大块骨架(min-h-screen 容器、<section>、<main>)
- bg-bg-elevated (34 处):浮起层(带 border 的卡片、表单输入、图标盒、grid 单元格)
--color-bg-elevated 浅色 #FFFFFF → 深色 #151B23,同样翻转。
浅色主题下 bg-white / bg-bg-primary / bg-bg-elevated 三者同值(纯白),
故本次改动在浅色主题下零像素差异,只修复深色主题。
新增审计工具:
- scripts/audit/hardcoded-color-audit.mjs:硬编码颜色分级盘点
(含 alpha 误报修正:bg-white/NN 半透明叠加两主题均成立,判 INFO 非 P0)
- scripts/audit/darkmode-bg-verify.mjs:直接验证背景随主题翻转
(浅色应纯白、深色应 rgb(10,14,20) 且无残留纯白块)
审计结果:marketing P0 67 → 0;全站 P0 97 → 30
(剩余 components 16 / other 8 / layout 3 / ui-kit 3 为第二批;admin 本就为 0)
门禁:
- tsc 0 error
- eslint 0 error(50 warnings 全为既有,改动文件未新增)
- jest 129/130 套件通过,1548 通过 / 2 跳过 / **0 断言失败**
唯一失败 src/lib/admin-api.test.ts 为**沙箱环境限制非代码问题**:
CODEBUDDY_BROKER_DENY 拦截 readFileSync,单独复验同样失败,
与本次改动零交集(改动仅限 src/app/(marketing)/ 下 10 个页面组件)
- 暗黑模式背景验证 18/18 PASS(9 路由 × 浅深双版)
|
2026-09-20 11:50:58 +08:00 |
|