feat(ui): 首页/雷达/TabBar 首版高级感视觉升级

- 扩展设计 Token:表面层级、发丝线、圆角、间距、动效曲线、数字字体

- 首页:克制霓虹背景、玻璃搜索栏、大图 Banner、金色标题、横向筛选胶囊、封面渐变、认证角标、卡片错峰入场、匹配弹窗改底部 Sheet

- 雷达:感知舱玻璃层级、细线同心圆、低干扰扫描、Marker 弹性落点、订单卡片左侧状态线、暖色主题适配

- TabBar:玻璃悬浮、选中指示条、中间发单按钮分层高光、暖色主题同步

- 已通过 HBuilderX 编译并生成预览二维码;777 用例全绿
这个提交包含在:
xcbyy
2026-10-23 11:21:55 +08:00
父节点 d0693c6d9e
当前提交 8196b1925b
共有 4 个文件被更改,包括 743 次插入 和 3 次删除

查看文件

@@ -431,4 +431,86 @@ const handlePublish = () => {
}
}
}
/* ===== Premium visual layer: 玻璃悬浮导航 ===== */
.custom-tabbar-root {
.tabbar-container {
background: rgba(13, 20, 36, 0.88);
backdrop-filter: blur(20px) saturate(140%);
border-top: 1rpx solid rgba(255, 255, 255, 0.08);
box-shadow: 0 -12rpx 36rpx rgba(0, 0, 0, 0.28);
}
.tab-item {
transition: transform var(--motion-fast, 120ms) var(--ease-out, ease-out);
&:active {
transform: scale(0.96);
}
.tab-icon-svg {
transition: transform 0.2s var(--ease-out, ease-out), opacity 0.2s ease;
}
.tab-label {
letter-spacing: 0.2rpx;
}
&.active .tab-icon-svg {
transform: translateY(-2rpx) scale(1.04);
}
&.active::after {
content: '';
position: absolute;
bottom: 8rpx;
left: 50%;
width: 24rpx;
height: 4rpx;
border-radius: 4rpx;
background: linear-gradient(90deg, #818CF8, #6366F1);
transform: translateX(-50%);
box-shadow: 0 0 10rpx rgba(99, 102, 241, 0.5);
}
}
.special-item-wrap {
.plus-circle-btn {
background: linear-gradient(145deg, #818CF8 0%, #6366F1 46%, #7C3AED 100%);
border-width: 5rpx;
box-shadow:
0 12rpx 28rpx rgba(99, 102, 241, 0.4),
0 0 0 8rpx rgba(99, 102, 241, 0.08);
}
&:active .plus-circle-btn {
transform: scale(0.94);
}
}
.radar-item-wrap.active::after {
background: linear-gradient(90deg, #6EE7B7, #10B981);
box-shadow: 0 0 10rpx rgba(16, 185, 129, 0.5);
}
&.theme-warm {
.tabbar-container {
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(20px) saturate(130%);
border-top-color: #F0ECE4;
box-shadow: 0 -12rpx 30rpx rgba(28, 25, 23, 0.07);
}
.tab-item.active::after {
background: linear-gradient(90deg, #FB923C, #EA580C);
box-shadow: 0 0 10rpx rgba(234, 88, 12, 0.35);
}
.special-item-wrap .plus-circle-btn {
background: linear-gradient(145deg, #FB923C 0%, #EA580C 55%, #C2410C 100%);
box-shadow:
0 12rpx 26rpx rgba(234, 88, 12, 0.32),
0 0 0 8rpx rgba(234, 88, 12, 0.07);
}
}
}
</style>