fix: 深色模式下高亮/占位元素正确适配

修改:
- theme.js: 新增 --bg-soft 变量(浅色 #F0F0F0, 深色 #2C2C2E)
- settings.wxss: .theme-item.active / .plan-item.active
  改用 rgba(var(--primary-rgb), 0.12) 替代 var(--primary-bg)
- leaderboard.wxss:
  - .period-tabs 背景用 var(--card-bg) 替代 #FFFFFF
  - .rank-num / .rank-avatar 用 var(--bg-soft) 替代硬编码灰
  - .rank-item.is-me / .my-bar 用 rgba() 替代 var(--primary-bg)

根因: --primary-bg 是品牌色极浅版,深色模式下仍是浅色,
不适合做高亮底色。rgba() 在两种模式下都自适应。
This commit is contained in:
2026-07-08 11:52:01 +08:00
parent 4268735053
commit 799d799bb9
3 changed files with 10 additions and 10 deletions
+6 -6
View File
@@ -8,7 +8,7 @@
/* Period tabs */
.period-tabs {
display: flex;
background: #FFFFFF;
background: var(--card-bg);
padding: 0 32rpx;
border-bottom: 1rpx solid var(--border);
position: sticky;
@@ -91,7 +91,7 @@
}
.rank-item.is-me {
background: var(--primary-bg);
background: rgba(var(--primary-rgb), 0.12);
border: 2rpx solid var(--primary);
}
@@ -106,20 +106,20 @@
font-weight: 700;
color: var(--text-secondary);
border-radius: 50%;
background: #F5F5F5;
background: var(--bg-soft);
flex-shrink: 0;
margin-right: 16rpx;
}
.rank-num.gold { background: #FFF7E6; color: #FA8C16; font-size: 36rpx; }
.rank-num.silver { background: #F0F0F0; color: #8C8C8C; font-size: 36rpx; }
.rank-num.silver { background: var(--bg-soft); color: #8C8C8C; font-size: 36rpx; }
.rank-num.bronze { background: #FFF1E6; color: #D46B08; font-size: 36rpx; }
.rank-avatar {
width: 64rpx;
height: 64rpx;
border-radius: 50%;
background: #F0F0F0;
background: var(--bg-soft);
flex-shrink: 0;
margin-right: 16rpx;
opacity: 0.6;
@@ -162,7 +162,7 @@
right: 24rpx;
display: flex;
align-items: center;
background: var(--primary-bg);
background: rgba(var(--primary-rgb), 0.12);
border: 2rpx solid var(--primary);
border-radius: 16rpx;
padding: 16rpx 24rpx;
+2 -2
View File
@@ -28,7 +28,7 @@
.theme-item:last-child { border-bottom: none; }
.theme-item.active {
background: var(--primary-bg);
background: rgba(var(--primary-rgb), 0.12);
margin: 0 -32rpx;
padding-left: 32rpx;
padding-right: 32rpx;
@@ -78,7 +78,7 @@
.plan-item:last-child { border-bottom: none; }
.plan-item.active {
background: var(--primary-bg);
background: rgba(var(--primary-rgb), 0.12);
margin: 0 -32rpx;
padding-left: 32rpx;
padding-right: 32rpx;