有效期限:永久有效
赠送项目:洗吹3次,烫染1次,洗吹3次,烫染1次…

移动端设计规范 · 统一视觉语言与组件标准,支撑 AI 批量出图。本站视觉已按 全局强制 UI 落地(#F7F7F7 页面底、无阴影无渐变、苹方 + TCloudNumber)。
以下条款为剑琅联盟移动端最高优先级约束,优先于本规范其他章节及历史 Figma 样稿。AI 出图、设计评审与 HTML + Tailwind 落地均须先满足本章;冲突时以本章为准。
phone-frame 机模仅为本站预览,非交付稿样式。#F7F7F7(--bg-page)。
TabBar、Bottom Action Bar 允许顶部分离投影(见下条)。#F32F41#FFD5D9、#FFF2F2#333333;常规正文 / 模块标题 #929292;辅助说明 #929292;必要时最强强调可用 #000000#D7D7D5;内容分隔线 #EDEDED 0.5px#EDEDED#FFFFFFSource Han Sans CN 作备选)。原因:Windows 上 PingFang SC 在 AI 识图与标注时易误判,思源黑体更稳定。¥ 与「应付 / 实付 / 小计」等文字符号随当前平台的 UI 字体(苹果=苹方,Windows=思源黑体);¥ 与数字间距固定 4px。本规范站预览:当前为 — · 设计稿与 HTML 交付须在说明中标注目标平台字体。
#F32F41 · 常规 #333333 · 次要 #929292√、✓ 或手写「勾」字;须用图标 check(16px 线性)或 check-circle-filled(面性成功),见第 7 章表单控件。PageTitleBar 返回须用 chevron-left 矢量图标,禁止文字 < / <。#D7D7D5(--border)#EDEDED(--gray-2 / --divider-color);左右缩进 16px(--divider-inset = --space-card),两端与内容对齐,禁止左右贴卡片或列表容器外缘;AI 标注 Divider/inset · 类名 u-divider u-divider--inset。--space-divider-y)PageTitleBar(页面标题栏);固定高 44px、白底、主体无描边;返回区为 chevron-left 矢量图标(24px),禁止文字 < / <;返回图标区垂直居中,标题与右侧操作文案底部水平对齐(不含系统状态栏)。#F32F41 + 白字;描边按钮 白底 + 红字 + 红描边 1px;禁用 灰底 #EDEDED。按钮内文案须在按钮区域内水平、垂直双向居中,禁止贴顶、贴底或偏左/偏右。以下规则与上文并列执行,适用于 AI 出图、Figma 稿与前端实现。
#F32F41,圆角建议 8px(与输入框小模块一致);内嵌线性图标为白色,描边粗细 stroke-width: 2。#EDEDED 底 + #929292 图标;不得用 emoji 代替图标。z-index 叠压导致 Tab 压住卡片或卡片盖住 Tab;模块之间以间距与分割线区分。#EDEDED,居中放置白色线性 image 图标(描边 2);未给到素材时亦不得留空或使用 emoji / 外链占位图。
PageTabs)。PageTitleBar、PageTabs、TabBar、页内 Tabs 的容器禁止四周边框或 1px 描边包裹;与内容区通过底色、间距、选中指示条区分(指示条不属于容器描边)。TabBar、Bottom Action Bar 内容区高 56px、填充 #FFFFFF(--bg-container);与底安全区 34px 白块分两层(TabBar 场景)。顶缘分离投影 box-shadow: 0 -0.5px 4px 0 rgba(0,0,0,0.08)(--bottom-surface-shadow);无描边。底安全区白块仍无投影、无描边。#FFFFFF);对齐 iPhone 17 竖屏底部安全区(--safe-bottom);无阴影、无描边、无圆角,不绘制 Home Indicator 等系统 UI;页面内容与底栏不得侵入此区域。overflow: hidden(或等价裁切);内部图标、标题、标签、按钮不得溢出到卡片圆角外,长文案须截断或换行。#FFFFFF / --bg-container)的内容卡片禁止四周边框或 1px 描边;与 #F7F7F7 页面底通过底色对比 + 圆角 + 间距区分。有色浅底卡(如 #FFF2F2 业绩卡)及输入框、描边按钮等不适用本条。Divider/inset(0.5px · #EDEDED · 左右各 16px);线两端须与正文/主内容左右缘对齐,禁止通栏贴边。PageTitleBar(页面标题栏),禁止自定义 Navbar 样式;RTS-AI 读稿 · Figma node 6-623 为整页 Home 稿,本组件仅对齐其顶栏区域(见 7 章 · PageTitleBar 实测差异表)。PageTitleBar 居中标题(18px)与右侧操作(16px)须文字底部在同一水平线对齐;返回区仍为 44×44 垂直居中。PageTitleBar 左侧返回禁止使用文字符号 <、<、‹ 等;须调用图标 chevron-left(24px · #333),见第 6 章。√/✓;使用 check 或 check-circle-filled(见第 6、7 章)。Button、对话框底栏、底栏操作条等一切带文字按钮,文案在按钮可点击区域内水平居中且垂直居中(单行、双行均适用;双行时整体居中)。ModalPopup/centered)距画布左右各 32px(内容区宽 326px = 390 − 32×2)。底部弹窗(ModalPopup/bottom)左、右、下边距均为 0(通栏 390px 贴底)。规范不包含半透明遮罩层组件;Figma 源稿遮罩仅作交互说明,不入库。Logo 为圆形徽章:红色底(#F32F41)+ 剑与盾金属质感图形,象征联盟、守护与专业力量。APP 内与对外物料须使用官方文件,禁止变形、改色或添加效果。
登录页 / 白底 Navbar / 关于我们
启动页 / 品牌头图区域
LOGO2.png(与规范同目录)| 场景 | 展示方式 | 配套文案 |
|---|---|---|
| 启动页 / Splash | Logo 96px 居中 + 应用名 | 剑琅联盟 · 商务协作平台 |
| 登录页 | Logo 72px + 标题 28px Medium | 剑琅联盟 |
| Navbar 首页 | 左 Logo 28px + 文字 16px(可选) | 剑琅联盟 |
| 关于 / 设置 | Logo 48px + 版本号 | 剑琅联盟 v{x.x.x} |
阶段 1:本规范站使用 Tailwind CSS v3 CDN + @layer components + @apply 封装组件(如 MemberCard)。阶段 2(当前):WebView 产品工程位于 app/,已切换 Vite + Tailwind + Capacitor,Token 自 assets/tailwind-spec-config.js 迁入 app/tailwind.config.js。
| 项 | 阶段 1 · 规范站 | 阶段 2 · WebView 产品(app/) |
|---|---|---|
| 样式 | Tailwind CDN · preflight: false | Vite + PostCSS + Tailwind v3 · npm run dev |
| 组件 | @apply 类名(.u-member-card 等) | src/styles/components/ 同 class · JS 模板渲染 |
| Token | assets/tailwind-spec-config.js | app/tailwind.config.js theme.extend |
| 图标 | Lucide(新)+ 既有 SVG 库(过渡) | Lucide · createIcons |
| 交互 | 纯 HTML 预览 | Hash 路由 · 卡详情演示 · Capacitor 原生壳 |
// app/tailwind.config.js(节选)
export default {
theme: {
extend: {
spacing: { 'status-bar-h': '53px', 'nav-h': '44px', 'bottom-placeholder': '34px', 'page-title-bar-side': '72px' },
height: { 'status-bar-h': '53px', 'bottom-placeholder': '34px' },
colors: { brand: { 6: '#F32F41' }, figma: { primary: '#333333' } },
maxWidth: { card: '358px', canvas: '390px', btn: '370px' },
},
},
};
产品工程演示:cd app && npm run dev · 路由 #/(HomeNavbar)· #/card-detail/stored(卡详情)· 组件 HomeNavbar / PageTitleBar / MemberCard / Button。
本规范为剑琅联盟(含 RTP 商品零售模块)专属。请先阅读并遵守 ★ 全局强制 UI,再使用下方组件库与 Token 章节。
¥ 与「应付/实付」等用 UI 字体(苹果 PingFang SC / Windows 思源黑体),¥ 与数字间距 4px。check,禁止文字 √。LOGO2.png 与「剑琅联盟」。PageTitleBar(44px,独立于状态栏) · 标题与右侧文案底对齐 · 标题栏/Tab 主体无描边 · 图片位灰底白 icon · 内容不横向溢出 · 按钮宽 ≤370px · 顶 Tab 390 居中 · 卡片不溢出 · 提示 icon 首行底对齐 · 空状态垂直居中。| 层级 | 引用 | 说明 |
|---|---|---|
| 组件库 | 第 7 章 · 剑琅联盟 | 页面组件命名、预览与调用说明 |
| 开发落地 | HTML + Tailwind CSS | CDN(规范站)→ Vite + Capacitor(WebView 产品)· Token 见 0.1 |
| 设计稿 | RTP 零售模块 Figma | 节点 72-137 · 与 HTML 原型库同步 |
| 设计资源 | Figma 实测 + Lucide + 图标库 | Lucide 线性图标 · 业务映射表 · 过渡保留 Stratis/Iconex SVG |
| 设计基准 | 宽 390(固定)× 高 844(默认) | 高可向下延展;顶占位 53px · 底占位 34px |
| UI 字体 | 苹果 PingFang SC · Windows 思源黑体 | 见 全局字体按设备;金额仍 TCloudNumber |
| 全局 UI | ★ 强制章节 | 高于本章与 Figma 历史稿 |
| 主按钮 | 高 48px · 字号 16px · 圆角 4/8/12/16 择档 | 见全局章 · 同类型一致 |
减少操作步骤,常用功能 2 次点击可达。列表支持搜索、筛选、批量操作。表单支持自动填充与历史记录。
信息层级分明,关键数据突出。状态用颜色+文字双重标识。空状态、加载态、错误态均有明确指引。
全局统一导航、按钮、表单、反馈方式。同类业务使用相同页面结构与组件组合。
视觉克制:无阴影、无渐变、扁平分区。品牌色用于关键操作与状态强调,不作为大面积铺底(顶栏等见全局章例外)。
商务 · 简洁 · 可信赖 · 数据驱动 · 操作明确 · 留白适度 · 白底灰底交替分区
色值以 ★ 全局强制 UI 为准。下表为 Token 映射;10 级品牌色阶供按下态/禁用推导,日常界面优先使用全局章固定色板。功能色用于状态标识,须配合图标与文字说明。
| 语义 | 浅色背景 | 常规色 | 深色/点击 | 使用场景 |
|---|---|---|---|---|
| 成功 Success | #E8F8F2 | #2BA471 | #008858 | 完成、通过、已生效 |
| 警告 Warning | #FEF3E6 | #E37318 | #BE5A00 | 待处理、即将到期 |
| 错误 Error | #FDECEE | #D54941 | #AD352F | 失败、驳回、异常 |
| 信息 Info | #ECF2FE | #0052D9 | #003CAB | 提示、链接、信息说明 |
| Token | 色值 | 用途 |
|---|---|---|
| gray-1 ★ | #F7F7F7 | 页面背景 bg-page |
| gray-2 ★ | #EDEDED | 禁用底 / 卡片·列表内内容分隔线 |
| gray-3 ★ | #D7D7D5 | 边框 border(非内容分隔线) |
| gray-4 ~ gray-8 | #DCDCDC ~ #777777 | 图标、占位、次要元素 |
| gray-9 ~ gray-12 | #5E5E5E ~ #2C2C2C | 深色文字、深色模式基础 |
| Token | 色值 | 用途 |
|---|---|---|
| text-primary ★ | #333333 | 标题、正文、导航文字(优先于 rgba 黑) |
| text-secondary ★ | #929292 | 描述、数据标签、次要信息 |
| text-muted | #B8B8B8 | 日期 Tab 未选中、弱提示 |
| text-inactive | #D7D7D5 | 分段器未选中(如实业绩) |
| text-placeholder | #929292 | 输入框占位符(与 text-secondary 同色 · 表单页) |
| text-disabled | #929292 | 禁用文字(与 :root 一致) |
| text-brand | #F32F41 | 品牌强调、可点击文字 |
| text-link | #0052D9 | 超链接(区别于品牌色) |
| text-anti | #FFFFFF | 深色/品牌色背景上的文字 |
| Token | 色值 | 用途 |
|---|---|---|
| brand-aux-1 | #FFD5D9 | 浅色强调底、标签底 |
| brand-aux-2 ★ | #FFF2F2 | 业绩卡、品牌浅区块(纯色) |
| accent-blue | #1A70FE | 提醒条文字、可点击「查看」 |
| accent-blue-bg | #E7F1FF | 异常/重要提醒条背景 |
| accent-orange | #F77357 | 营销副标题、活动强调 |
| Token | 色值 | 用途 |
|---|---|---|
| bg-page ★ | #F7F7F7 | 页面底色 |
| bg-container ★ | #FFFFFF | 卡片、Cell、弹窗 |
| bg-disabled ★ | #EDEDED | 禁用按钮、浅灰块 |
| border ★ | #D7D7D5 | 默认边框 1px(非内容分隔线) |
| border-focus | #F32F41 | 输入框聚焦边框 |
UI 正文字体按目标设备二选一,勿混用。完整说明见 ★ 全局强制 UI · 字体规范。
| 用途 | 字体 | 说明 |
|---|---|---|
| UI 字体 · Apple ★ | PingFang SC | macOS / iOS / iPadOS 设计稿与实现 |
| UI 字体 · Windows ★ | Source Han Sans SC(思源黑体) | 替代 PingFang SC;避免 AI 识图误判 |
| 字重 Regular | 400 | 正文、描述 |
| 字重 Medium | 500 | 标题、按钮、强调 |
| 字重 Semibold | 600 | 核心数据数字(非 TCloudNumber 时) |
| 数据字体 ★ | TCloudNumber v1.010 | 金额纯数字与小数点;默认 Regular 400 · ≥24px 用 Bold 700 |
| 金额混排 ★ | ¥、应付/实付/小计 → UI 字体 | ¥ 与数字间距 4px |
官方数据字体。金额数字默认 TCloudNumber-Regular(400);字号 ≥24px 的大指标使用 TCloudNumber-Bold(700)。
Web UI 字体:苹果 PingFang SC · Windows / 安卓 Source Han Sans SC(思源黑体)。金额:font-family: TCloudNumber · 通过 @font-face 引入 assets/fonts/TCloudNumber/ · Tailwind 使用 font-data / font-ui。
| Token | 字号 | 行高 | 字重 | 场景 |
|---|---|---|---|---|
| font-xs | 10 | 16 | 400 | 极小标签 |
| font-tabbar ★ | 11 | 15 | 400 | 标准底栏 Tab 文案 |
| font-s | 12 | 20 | 400 | 辅助说明、时间戳、Badge |
| font-base ★ | 14 | 22 | 400 | 正文、Cell 标题、表单标签 |
| font-m | 16 | 24 | 400/500 | Navbar 标题、列表主标题 |
| font-l | 20 | 28 | 500 | 区块标题、关键数据 |
| font-xl | 24 | 32 | 500 | 页面大标题、统计数字 |
| font-xxl | 28 | 36 | 500 | 登录页标题、空状态标题 |
| font-data ★ | 20 | 22 | 400 (TCloudNumber-Regular) | 业绩卡、实付等常规金额 |
| font-data-lg ★ | 32 | 40 | 700 (TCloudNumber-Bold) | 仪表盘大指标(≥24px 规则) |
| font-nav-label | 11 | 15 | 400 | 标准底栏 Tab 文案(同 font-tabbar) |
| font-grid-label | 13 | 18 | 400 | 店务宫格入口(价目表等) |
text-overflow: ellipsisfont-weight: 400(TCloudNumber-Regular);字号 ≥24px 时用 700(TCloudNumber-Bold)√ / ✓),须用第 6 章 check 或 check-circle-filled 图标间距以 ★ 全局强制 UI 为准(16 / 8 / 12 / 4px 等),下表为扩展 Token。
| Token | 值 | 用途 |
|---|---|---|
| size-1 | 4px | 图标与文字间距、紧凑内边距 |
| size-2 | 8px | Tag 内边距、小间距 |
| size-3 | 12px | Cell 内部间距、表单字段间距 |
| size-4 ★ | 16px | 页面左右边距、卡片内边距 |
| size-5 | 20px | 区块间距 |
| size-6 | 24px | 大区块间距、Section 分隔 |
| size-8 | 32px | 页面顶部留白 |
| size-10 | 40px | 大按钮高度、输入框高度(large) |
| size-12 | 48px | 主按钮高度、Bottom Bar 按钮区 |
390px,所有页面设计、HTML 原型与 AI 出图不得改变宽度,禁止横向扩展画布。844px(常见全面屏逻辑高度基准);当显示内容超出默认画布可视区域时,画布高度可向下延长,以完整呈现可滚动内容,宽度仍为 390px。| 元素 | 尺寸 | 说明 |
|---|---|---|
| 画布宽度 ★ | 390 px(固定) | 全站统一,禁止加宽 |
| 画布高度(默认) | 844 px | 首屏/短页基准;AI 出图默认从此高度起稿 |
| 画布高度(延展) | ≥ 844 px,按内容向下增高 | 长列表、多段表单、长详情等;仅纵向扩展 |
| WebView 2x 切图 | 宽 780 · 高 1688 起 | 逻辑宽 390 固定;高度 2x 随设计稿延展 |
| 画布外框 ★ | 直角矩形 | 画板禁止圆角 / 投影 / 外描边 |
| Figma 自动布局 ★ | 全部 Frame | 须启用 Auto Layout,禁止纯绝对定位摆版 |
| 页面水平边距 | 16px | 内容区距屏幕边缘 |
| PageTitleBar ★ | 44px | 内页顶栏 · 组件库「页面标题栏」· 白底 · 主体无描边 |
| TabBar 高度 | 56px | 内容区高度;与底安全区 34px 分两层(合计 90px 白底) |
| TabBar 背景 ★ | #FFFFFF | --bg-container |
| 底部栏顶部分离 ★ | 0 -0.5px 4px 0 rgba(0,0,0,0.08) | --bottom-surface-shadow · TabBar / Bottom Action Bar 共用 |
| 状态栏占位 ★ | 390×53px 纯白块 | 设计稿不画系统状态 UI;与 PageTitleBar(44px)分属上下区域 |
| 底部占位区 ★ | 390×34px 纯白块 | 对齐 iPhone 17 竖屏底部安全区;设计 / 开发均为 34px;无阴影、无描边、无圆角 |
| 居中弹窗边距 ★ | 左右各 32px | ModalPopup/centered · 内容宽 326px |
| 底部弹窗边距 ★ | 左 / 右 / 下 0 | ModalPopup/bottom · 390 通栏贴底 |
| 列表行高 | 56px | 标准单行列表 |
| 列表行高(多行) | ≥72px | 含描述文字 |
| Bottom Action Bar | 56px + safe-bottom | 固定底部操作栏 |
圆角以 ★ 全局强制 UI 为准,下表为 Token 命名映射。
| Token | 值 | 用途 |
|---|---|---|
| radius-tag ★ | 4px | 标签、角标 |
| radius-input ★ | 8px | 输入框、小模块、搜索框 |
| radius-card ★ | 12px | 全局卡片、弹层顶角 |
| radius-btn-4 | 4px | 紧凑按钮、表格内操作 |
| radius-btn-8 | 8px | 卡片内次要按钮、并排双钮 |
| radius-btn-12 ★ | 12px | 表单提交、页内主操作(推荐默认档) |
| radius-btn-16 | 16px | 底部栏主按钮、强强调 CTA |
| radius-circle | 50% | Avatar、圆形图标底 |
| 按钮类型 | 建议圆角 | 说明 |
|---|---|---|
| 底部栏主按钮 / 次按钮 | 16px 或 12px | 同一 App 底栏两套按钮须同值;与卡片圆角可不同 |
| 表单页「提交」「保存」 | 12px 或 8px | 与登录页主钮保持同档 |
| 列表 / 弹窗内描边、幽灵钮 | 8px 或 4px | 与同级列表操作钮一致 |
| 品牌图标方形钮 | 8px | 属图标按钮,非文字按钮;见全局第 14 条 |
禁止在同一类型混用两种圆角(例如底栏左「取消」8px、右「确定」16px)。选定后写入设计 Token / 组件变体名(如 Button/r16)。
剑琅联盟移动端默认不使用投影层级(--shadow-1/2/3 均为 none)。卡片、弹层、Fab 等通过白底/灰底、1px 边框(--border)、圆角与间距区分层次;例外:TabBar、Bottom Action Bar 顶部分离投影见 ★ 全局强制 UI。
Web 落地(阶段 1):新 HTML 组件优先使用 Lucide(如 MemberCard 删除 trash-2:<i data-lucide="trash-2"></i> + lucide.createIcons())。既有规范图标仍走下方 Stratis / Iconex / WeChat 三套库。
尺寸与颜色以 ★ 全局强制 UI 为准。优先调用本库已有图标;库内无合适项时,可从外部引入矢量图标,须符合全局尺寸与色板,并标注来源。图标库由三套 Figma 资源构成:Stratis UI Icons(主库)· Iconex Freebie(补充)· WeChat UX Kit(微信场景精选,icons/wechat/、icons/wechat-filled/,构建见 scripts/build-wechat-ux-icons.js)。解析顺序:Stratis → Iconex → WeChat;卡片分别标注 Iconex / WeChat。微信专属语义优先用 wx-* 命名;可与 Stratis 等价的项在目录中带 alias 仍显示 Stratis 资源。
| 设计稿文案 | 图标名 | 分类 | 说明 |
|---|---|---|---|
| 开单 | file-add 或 edit-1 | 美业 | 顶栏快捷区,可用定制 SVG |
| 开卡 | creditcard | 美业 | 会员卡开卡 |
| 验券 | coupon | 美业 | 核销验券 |
| 结算 | wallet | 美业 | 收银结算 |
| 价目表 | view-list | 美业 | 宫格 38px 区 |
| 会员卡 | creditcard | 美业 | 会员管理入口 |
| 会员管理 | usergroup | 美业 | — |
| 员工管理 | member | 美业 | — |
| 预约 | calendar | 美业 | — |
| 经营分析 | chart | 美业 | — |
| 业绩排行 | chart-bar | 美业 | — |
| 联盟广场 / 商城 Tab | shopping-bag | 零售 | TabBar 商城 · Iconex |
| 首页 Tab(选中) | home-tab-filled | 导航 | 定制 · 门洞圆头粗短线 |
| 首页 Tab(未选) | home-tab | 导航 | 定制线性 |
| 客户 Tab | user | 导航 | — |
| 业绩 Tab | chart-line | 导航 | — |
| 工作台 Tab | app | 导航 | — |
| 上架到店 | add | 零售 | 选品卡片主按钮 |
| 购物车 | cart | 零售 | 底栏 Badge 数量 |
| 供货价/零售价 | money | 零售 | 价格三档表单 |
| 物流 | undertake-delivery 或 box-package | 订单 | Iconex 包裹 |
| 促销/特卖 | sale / sale-filled | 零售 | Iconex |
| 商品分类 | category / category-filled | 零售 | Iconex |
| 领券 | coupon-badge / sale-tag-filled | 零售 | Iconex |
| 计时/服务时长 | timer / timer-filled | 美业 | Iconex |
| 语音/客服 | microphone / headphones-filled | 通讯 | Iconex |
| 朋友圈 | wx-moments | 社交 | |
| 小程序 | wx-miniprogram | 系统 | |
| 付款码 | wx-pay-code | 订单 | |
| 卡券包 | wx-coupon-wallet | 零售 | |
| 扫一扫 | wx-scan 或 scan | 操作 | WeChat / Stratis |
| 转账 | wx-transfer | 订单 | |
| 公众号 | wx-official-account | 通讯 |
<span class="s-icon" data-icon="search"></span> · 面性 <span class="s-icon s-icon--filled" data-icon="home-filled"></span> · Figma Stratis UI Icons · AI 标注 icon:search / icon:home-filled| Token | px | 用途 |
|---|---|---|
| icon-sm ★ | 16 | 小箭头、辅助图标 |
| icon-base ★ | 24(安全区 20) | 通用功能图标、Navbar、按钮内 |
#F32F41 · 常规 #333333 · 次要 #929292 · 反色 #FFFFFF线性优先 Stratis;面性为 -filled 后缀;wx-* 为 WeChat UX Kit 精选(构建脚本导出 SVG)。Iconex / WeChat 卡片有来源标签。面性适用于 Tab 选中、状态强调。
以下为剑琅联盟移动端可调用组件。优先选用本目录已有组件;库内无合适项时,可从外部 Figma 资源或业务组件引入,视觉须遵循 ★ 全局强制 UI,并标注来源。AI 出图须标注 组件名 + 变体。微信生态页面可参考 WeChat UX Kit 结构,但颜色、圆角、按钮、无阴影仍以本规范为准。
Le Wagon · 精选左列为 Figma 源组件名,右列为剑琅规范内应标注的组件 ID。落地时视觉不得使用微信绿顶栏/投影,须套入全局 Token。
| WeChat UX Kit | 规范组件 ID | 名称 | 说明 |
|---|
| 分类 | 组件 ID | 名称 | 场景 |
|---|---|---|---|
| 导航 | PageTitleBar | 页面标题栏 | 内页顶栏必用 · 左右等宽栅格 · Lucide 返回 · Figma 6-623(仅顶栏) |
| 导航 | HomeNavbar | 首页顶栏 | 左 Logo 28px + 品牌名 16px · 见 7 章 |
| 导航 | PageTabs | 顶部 Tab 条 | 宽 390 居中 · 页面级分段 |
| 导航 | TabBar | 标准底栏 | 子模块 3–4 Tab |
| 反馈 | AlertBanner | 提示信息栏 | 图标与首行文案底对齐 |
| 反馈 | ActionSheet | 动作面板 | WeChat UX · 底出菜单 · 见 7.0 |
| 反馈 | ModalPopup | 弹窗 | 全局通用 · 7 变体 · 见 7.1 |
| 反馈 | Toast | 轻提示 | 屏幕居中 · 无图标 · 见 7.2 |
| 反馈 | Dialog | 简易对话框 | 轻量确认 · 与 ModalPopup 并存 |
| 表单 | SearchBar | 搜索栏 | WeChat UX · 圆角 8px 灰底 |
| 通讯 | ChatBubble | 聊天气泡 | WeChat UX · 客服/IM |
| 营销 | PromoCard | 营销卡(纯色底) | 获客/推客 · 无渐变 |
| 零售 | ProductCard | 商品双列卡 | 选品上架 |
| 零售 | PriceRow | 价格三档行 | 原价/零售/供货 |
| 美业 | MemberCard | 会员卡 | 详卡 · 列表条 · 五类卡面主题 |
| 零售 | CartBar | 商品底栏 | 店铺/客服/加购/购买 |
| 基础 | Button / Input / Tag / … | 通用基础组件 | 见下方预览 |
RTP 选品 · 双列 gridPRD-214 · list/retail/supply编辑页表格:规格 × 原价/零售价/供货价/库存 · 分销默认渠道价=供货价
RTA-R1 · node 1122-1114 · 详卡 + 列表条卡面使用切图背景(assets/member-card/)· 详卡 Frame 五张 · 列表条 Mask 五张 · CTA 色由切图主色推导。AI 标注:MemberCard/detail + --stored 或 MemberCard/compact + --times。
详卡像素对齐 RTA-R1 · 头区 168px / padding 24px · 白区 12px #8E8E8E · 开单 28px · 删除仅图标。
有效期限:永久有效
赠送项目:洗吹3次,烫染1次,洗吹3次,烫染1次…
有效期限:永久有效
赠送项目:洗吹3次,烫染1次…
有效期限:永久有效
赠送项目:洗吹3次,烫染1次…
有效期限:永久有效
赠送项目:洗吹3次,烫染1次…
有效期限:永久有效
赠送项目:洗吹3次,烫染1次…
有效期限:永久有效
赠送项目:洗吹3次,烫染1次…
高度 48px · 圆角 10px · Mask 切图含左侧类型名标签 · 仅显示卡名称 · 保留 1px 描边。
compact 卡置于 PageTitleBar 下方 · 卡统计区块(持卡人数 / 总计余额)。
| 修饰符 | 详卡切图 | 开单按钮 | 列表条切图 |
|---|---|---|---|
--stored | stored-detail.png | #BDD5ED | stored-compact.png |
--times | times-detail.png | #B9D4DD | times-compact.png |
--discount | discount-detail.png | #E1C789 | discount-compact.png |
--period | period-detail.png | #E3BFB3 | period-compact.png |
--package | package-detail.png | #D7C3A8 | package-compact.png |
详卡宽 358 · 头 min-height 168px · 头 padding 24/16/16 · 头底 gap 8px · 白区 padding-top 8px · 底栏 padding 14px · 开单 28px · 资源 assets/member-card/。
剑琅联盟 · Splash / Login
Button · primary · radius 4px| 变体 | 规格 |
|---|---|
| Primary ★ | 高 48px · 字号 16px / 500 · 圆角四档择一 · 红底 #F32F41 + 白字 · 无投影 |
| 字号变体 | 默认 16px · btn-sm 14px · btn-lg 16px(加宽 padding) |
| 文案对齐 ★ | 按钮内文字水平 + 垂直居中(flex 居中或等价实现;禁止偏上/偏下/单侧留白不均) |
| Outline ★ | 白底 + 红字 + 红描边 1px · 与同级 Primary 相同圆角 |
| Disabled | 圆角与同页主按钮一致 · bg #EDEDED |
| BottomBar 示例 | 取消 Outline btn--r16 + 确定 Primary btn--r16 |
| 最大宽度 ★ | 370px(通栏亦同,左右各约 10px 留白) |
| Block | 宽度 100%,且 max-width 370px |
| BottomBar | 双按钮:左 Outline + 右 Primary,间距 12px |
| 填充 / 描边 ★ | 填充:红底白字 · 描边:白底红字红边(对话框、底栏同规) |
RTS-AI · node 6-623(仅顶栏)RTS-AI 读稿 · Figma 6-623 为整页 Home 稿(含 Tab、内容区);本组件仅对齐其顶栏区域。设计页 / 原型 / AI 出图内页顶栏必须调用 PageTitleBar;返回图标统一 Lucide chevron-left(与 app/ 一致)。首页品牌头请用 HomeNavbar。
| 与 Figma 6-623 实测差异(仅顶栏相关) | ||
|---|---|---|
| 项 | Figma 6-623 实测 | 本规范 PageTitleBar |
| 引用范围 | 整页 Home(Tab + 内容区) | 仅顶栏 44px 区域 |
| 顶区总高 | Header 约 90px(含状态区) | 状态栏占位 53px + 标题栏 44px |
| 标题字号 | 17px Medium | 18px / 500(规范统一) |
| 右侧操作 | 图标 +「我的推广」 | 16px 文案;可选 action--icon 变体 |
| 返回图标 | chevron-left 24px | Lucide chevron-left 24px · #333 |
| 标题栏描边 | 无 | 无(主体无描边) |
| 属性 | 值 | 说明 |
|---|---|---|
| 状态栏占位 ★ | 390×53px | 纯白块,不画系统状态元素 |
| 标题栏高度 ★ | 44px | 白底 · 主体无描边 |
| 栅格列宽 ★ | --page-title-bar-side 72px · 1fr · 72px | 左右等宽,标题几何居中 |
| 标题 | 18px / 500 / #333 | <h1 class="title"> · 过长单行省略 |
| 文案对齐 ★ | 底对齐 | 标题与右侧操作文字底部在同一水平线;返回区垂直居中 |
| 返回 ★ | Lucide chevron-left · 24px | <a class="back"> 44×44 · 禁止文字 < |
| 右侧操作 | 16px · #333 | <button class="action"> · action--muted · action--icon |
| 变体 | 见上方预览 | --no-back · 无操作 · 图标文案 · muted · 长标题 |
| 调用 ★ | 设计页必用 | 内页 PageTitleBar · 首页 HomeNavbar |
| 禁止 | — | 标题栏内不放 Logo(首页等特殊场景用 HomeNavbar) |
宽 390 · 画布居中| 属性 | 值 |
|---|---|
| 容器宽 ★ | 390px,相对画布水平居中 |
| 高度 | 48px · 白底 · 主体无描边 |
| 指示器 | 32×3px · brand-6 · 贴底居中(非容器描边) |
子模块页 · 非首页| 属性 | 值 |
|---|---|
| 首页图标 ★ | home-tab-filled(选中)· 门洞为圆头粗短线 · 定制 SVG |
| 商城图标 ★ | shopping-bag(Iconex 外部库) |
| 图标 ★ | 24×24 · 未选中线性 · stroke-width 1.5 |
| 选中态 ★ | 切换为品牌色 面性图标(-filled)· 文案 #F32F41 |
| 文案 | 11px · 未选中 #929292 |
| 栏高 | 56px 内容区 + 34px 底安全区 · 白底 --bg-container · 主体无描边 |
| 顶部分离 ★ | box-shadow: 0 -0.5px 4px 0 rgba(0,0,0,0.08)(--bottom-surface-shadow) |
Tabs高 48px · 主体无描边 · 选中指示器 32×3px brand-6(居中 · 长度为原 16px 的两倍)· ≤4 项等分
Search高 36px · bg gray-1 · 圆角 capsule · 图标 search 20px
Input · TextareaInput 高 40px · 圆角 6px · 聚焦 border brand-6 · 必填标签前红色 *
Tag · BadgeSwitch · CheckBox · Radio| 勾号 ★ | 规格 |
|---|---|
| 禁止 | 字符 √、✓、Unicode 勾形文字 |
| 多选已选 | check · 16px · 白 icon 于品牌色 20×20 方底 |
| 步骤完成 / 成功 | check 于成功色圆底,或 check-circle-filled 16px |
Steps圆点与步骤文案间距 8px · 完成态勾号 17px
图标 · 首行底对齐| 属性 | 值 |
|---|---|
| 图标 ★ | 16px · 与第一行文案 baseline 底对齐 |
| 文案 | 13px · 行高 1.5 · 可换行 |
| 间距 | 图标与文字 8px |
全局通用 · Figma xqMgMp7wLhmEvvgiv6rSdW剑琅联盟全局通用弹窗组件(居中 / 底部共 7 变体)。视觉服从 ★ 全局强制 UI(无阴影、按钮高 48px、次钮 Outline、主钮 Primary)。不含遮罩层。设计稿参照 Figma · xiaobin。AI 标注:ModalPopup + 变体。
| 组件 ID | 名称 | Figma | 说明 |
|---|
| 属性 | 居中弹窗 | 底部弹窗 |
|---|---|---|
| 边距 ★ | 左右各 32px(宽 326px) | 左 / 右 / 下均为 0(宽 390 贴底) |
| 圆角 | 16px 四角 | 顶左 / 顶右 16px · 底边 0 |
| 内边距 | 20px | 上 20 · 左右 20 · 下 40 |
| 标题 | 17px / 600 / #333 · 居中 | |
| 副文案 | 16px / 400 / #929292 · 居中 | |
| 按钮区 | 距文案 8px · 间距 12px · 高 48px · 圆角 12px | |
| 双按钮顺序 | 左 Outline 取消 · 右 Primary 确定 | |
| Icon 媒体 | 40×40 圆底 #EDEDED · 24px SVG · icons/xiaobin/bell-notification.svg | |
| Image 媒体 | 宽 100% · 高 135px · 圆角 8px · 占位 #EDEDED + 白 image icon | |
副标题 / 相关信息说明文案,尽量简洁。
ModalPopup/centered/dual/default · Figma 1:5485副标题 / 相关信息说明文案。
ModalPopup/centered/single/default · Figma 1:5493副标题 / 相关信息说明文案。
ModalPopup/centered/dual/icon · Figma 1:5499副标题 / 相关信息说明文案。
ModalPopup/centered/single/icon · Figma 1:5509副标题 / 相关信息说明文案。
ModalPopup/centered/dual/image · Figma 1:5517副标题 / 相关信息说明文案。
ModalPopup/centered/single/image · Figma 1:5526说明文案应尽量简洁,避免打断用户流程。
ModalPopup/bottom · Figma 1:5480 · 390 通栏贴底与 Figma 初稿差异:去除弹窗/按钮投影;次按钮由灰底改为 Outline;按钮高度 48px;居中弹窗边距按规范 32px。
轻量确认驳回后需重新提交审批,是否继续?
| 按钮 | 规格 |
|---|---|
| 填充按钮 ★ | 红底 #F32F41 + 白字 |
| 描边按钮 ★ | 白底 + 红字 + 红描边 1px |
轻提示请使用独立组件 Toast,勿与本 Dialog 混用样式。
业绩PK动画设置 · node 27-381用于操作结果、权限不足等短时反馈。视觉以 Figma · 业绩PK动画设置 · 27-381 为准。AI 标注:Toast/default。
单行 · 未触达边距不换行
多行 · 触达左右 40px 边距后换行
| 属性 | 值 |
|---|---|
| 位置 ★ | 屏幕水平 + 垂直居中(相对 390 画布内容区) |
| 填充色 ★ | #333333 · 不透明度 90%(rgba(51, 51, 51, 0.9)) |
| 圆角 | 4px |
| 内边距 ★ | 左右 16px · 上下 10px |
| 字体 ★ | 思源黑体(Source Han Sans SC / CN) |
| 字色 ★ | #FFFFFF |
| 字重 ★ | Regular(400) |
| 字号 ★ | 14px |
| 行高 ★ | 20px |
| 字距 ★ | 0 |
| 对齐 | 单行 / 多行文案均水平居中 |
| 换行 ★ | 外缘距画布左右各 40px(--toast-margin-h)后自动换行 · 不限制行数 |
| 宽度 | 随文案自适应 · 最大宽 310px(--toast-max-width = 390 − 40×2) |
| 图标 | 无(纯文字 Toast) |
| 遮罩 | 无 · 不阻断页面操作 |
| 阴影 | 无 |
| 展示时长 | 建议 2–3s 自动消失(实现层约定) |
与 NoticeBar / AlertBanner(页内条)区分:Toast 为浮层短时提示;与 Dialog / ModalPopup 区分:Toast 无按钮、无标题、无遮罩。
RTP 零售 · node 666-1758占位插画以 RTP 零售模块 · Figma 666-1758 为准。AI 标注:Empty/default · 插画类 u-empty__illustration。
| 属性 | 值 |
|---|---|
| 插画外框 | 144 × 128px(含装饰圆;Figma 实测) |
| 主圆底 | 120 × 120px 正圆 · 填充 #FFFFFF(--bg-container) |
| 主圆偏移 | 距外框左 16px · 上 8px |
| 文件图标 | 57 × 57px · 描边 #D1D5DC(--empty-state-icon)· 资源 assets/empty-state/file-icon.svg |
| 装饰圆(右上) | 24 × 24px · #e5e7eb · 不透明度 50% |
| 装饰圆(左下) | 16 × 16px · 同色同透明度 |
| 布局 | 插画 + 文案组在内容区垂直居中;主按钮宽 ≤370px |
Avatar尺寸 32 / 40 / 48px · 圆形 · 默认 gray-3 底
Progress · LoadingFab48×48 圆形 · brand-6 · 无投影 · 列表页「新建」
Upload虚线框 80×80 · 支持图片/PDF · 表单附件区
Skeleton固定底栏| 按钮 | 规格 |
|---|---|
| 主操作(填充)★ | 红底白字 · brand-6 |
| 次操作(描边)★ | 白底红字红描边 |
| 布局 | 高 56px + safe-bottom · 双按钮间距 12px · 圆角同档(建议 16px)· 白底 · 主体无描边 |
| 顶部分离 ★ | box-shadow: 0 -0.5px 4px 0 rgba(0,0,0,0.08)(--bottom-surface-shadow · 与 TabBar 共用) |
Divider / inset卡片内、列表 Cell 组内分隔同级内容时使用 Divider/inset:线粗 0.5px · 色 #EDEDED · 左右缩进 16px,两端与内容对齐,禁止左右贴容器外缘。类名:u-divider u-divider--inset。
| 属性 | 值 |
|---|---|
| 变体 ★ | Divider/inset · 卡片内 / 列表 Cell 组内同级分隔 |
| 线粗 ★ | 0.5px(--divider-weight) |
| 颜色 ★ | #EDEDED(--gray-2 / --divider-color) |
| 左右缩进 ★ | 各 16px(--divider-inset = --space-card)· 与内容对齐 |
| 上下留白 | 默认 12px(--space-divider-y) |
| 禁止 | 左右通栏贴边(贴卡片或列表容器外缘) |
DropdownMenu组合组件白底 #FFFFFF · 圆角 12px · padding 16px · 无描边 · 金额 28px · TCloudNumber-Bold(≥24px)· 用于工作台数据概览
| 业务状态 | Tag 类型 | 颜色 |
|---|---|---|
| 草稿 / 未提交 | default | gray-1 / text-secondary |
| 待审批 / 进行中 | brand | brand-1 / brand-6 |
| 已通过 / 已完成 | success | success-1 / success-6 |
| 已驳回 / 已取消 | error | error-1 / error-6 |
| 即将到期 / 待补充 | warning | warning-1 / warning-6 |
| 已归档 / 只读 | default | gray-2 / gray-8 |
可复制到 tailwind.config.js 的 theme.extend、CSS 变量,或导入设计工具 Token 插件。
坐标系说明:tokens1x 为 HTML 画布 / CSS 逻辑像素(宽 390);tokens2x 为 Figma / Flutter 设计稿(宽 780,数值一般为 1x 的 2 倍)。实现 CSS / Tailwind 时仅使用 tokens1x。
{
"specVersion": "1.6",
"appName": "剑琅联盟",
"appLogo": "LOGO2.png",
"figmaFile": "RTP-零售模块",
"figmaNode": "72-137",
"tokens1x": {
"color": {
"textPrimary": "#333333",
"textSecondary": "#929292",
"textPlaceholder": "#929292",
"textDisabled": "#929292",
"textStrong": "#000000",
"textBrand": "#F32F41",
"bgPage": "#F7F7F7",
"bgContainer": "#FFFFFF",
"bgDisabled": "#EDEDED",
"border": "#D7D7D5",
"brand6": "#F32F41"
},
"font": {
"fontXs": { "size": 10, "lineHeight": 16 },
"fontTabbar": { "size": 11, "lineHeight": 15 },
"fontS": { "size": 12, "lineHeight": 20 },
"fontBase": { "size": 14, "lineHeight": 22 },
"fontM": { "size": 16, "lineHeight": 24 },
"fontL": { "size": 20, "lineHeight": 28 },
"fontXl": { "size": 24, "lineHeight": 32 },
"button": { "size": 16, "weight": 500 }
},
"radius": {
"radiusTag": 4,
"radiusInput": 8,
"radiusCard": 12,
"radiusBtn4": 4,
"radiusBtn8": 8,
"radiusBtn12": 12,
"radiusBtn16": 16
},
"layout": {
"canvasWidth": 390,
"canvasHeightDefault": 844,
"statusBarHeight": 53,
"navBarHeight": 44,
"tabBarHeight": 56,
"buttonHeight": 48,
"buttonMaxWidth": 370,
"buttonFontSize": 16,
"bottomPlaceholderHeight": 34,
"pageTitleBarSideWidth": 72,
"pageTabWidth": 390,
"modalMarginHorizontal": 32
},
"components": {
"pageTitleBarBackIcon": "lucide:chevron-left",
"pageTitleBarTitle": { "size": 18, "weight": 500 },
"pageTitleBarAction": { "size": 16, "weight": 400 },
"homeNavbarLogo": 28,
"homeNavbarTitle": { "size": 16, "weight": 500 },
"toastMarginHorizontal": 40,
"toastMaxWidth": 310,
"toastWrap": "unlimited-lines-center"
}
},
"tokens2x": {
"note": "Figma / Flutter 设计稿坐标,使用前勿与 tokens1x 混用",
"designWidth": 780,
"designHeightDefault": 1688,
"font": {
"fontBase": { "size": 28, "lineHeight": 44 },
"fontM": { "size": 32, "lineHeight": 48 }
},
"radius": {
"radiusCard": 24,
"radiusBtn12": 24
},
"layout": {
"navBarHeight": 88,
"buttonHeight": 96,
"tabBarHeight": 112,
"pagePaddingH": 32
}
},
"references": {
"pageTitleBarFigma": "https://www.figma.com/design/44P9g5yKcQEyXdHCayIrMn/RTS-AI读稿?node-id=6-623",
"modalPopupSource": "https://www.figma.com/design/xqMgMp7wLhmEvvgiv6rSdW/xiaobin",
"globalUIMandate": "#global-ui"
}
}
注:画布 390×844 直角无外框;顶状态栏占位 390×53、底安全区 390×34 白块;PageTitleBar 44px 独立于状态栏;按钮高 48px、字号 16px、圆角四档 4/8/12/16;返回 chevron-left 矢量图标。
请按照《剑琅联盟 移动端设计规范 v1.6》设计 [页面名称]: - 最高优先级:★ 全局强制 UI — 390×844 直角画板(无圆角/无阴影/无描边)、所有 Frame 自动布局、#F7F7F7 底、无阴影无渐变;按钮高 48px、字号 16px、圆角仅 4/8/12/16 且同类型一致 - 产品:剑琅联盟 · Logo: LOGO2.png - 字体:苹果 PingFang SC / Windows 思源黑体 Source Han Sans SC(Windows 禁止 PingFang SC);金额 TCloudNumber 默认 Regular、≥24px Bold;商品价 14px 固定 Regular;¥ 与「应付/实付」用 UI 字体,¥ 与数字间距 4px - 勾号:仅用图标 check / check-circle-filled,禁止文字 √ 或 ✓ - 文字:#333 / #929292 · 边框 #D7D7D5 · 主色 #F32F41 - 图标:优先第 6 章库(Stratis / Iconex / WeChat);无合适项可外部矢量图标 · 24px(安全 20)/ 16px · 颜色 #F32F41 / #333 / #929 - 组件:优先第 7 章库;无合适项可外部引入,须符合全局 UI 并注明来源 - 占位:状态栏 390×53 白块;页面最底 390×34 白块(无阴影/描边/圆角) - 硬性:无 emoji;Figma 所有 Frame 须 Auto Layout;返回用 Lucide chevron-left 矢量图标(禁止文字 <);白底内容卡片无描边;卡片/列表内分隔线 0.5px #EDEDED、左右缩进 16px(禁止贴边);按钮高 48px 字号 16px;按钮文案在按钮内水平垂直居中;Tab/卡片不遮挡;内页顶栏必用 PageTitleBar(44px);首页顶栏用 HomeNavbar;状态栏占位 53px、底栏 34px;标题与右侧文案底对齐;栅格 --page-title-bar-side 72px 左右等宽;Figma 6-623 仅参考顶栏区域;PageTitleBar/PageTabs/TabBar 主体无描边;图片位 #EDEDED+白 image icon;不横向溢出;按钮 max 370px;顶 Tab 390 居中;卡片内容不溢出;提示 icon 与首行底对齐;空状态内容区垂直居中 - 组件:优先第 7 章库;弹窗用 ModalPopup(7.1 · 7 变体);无合适项可外部引入 - 弹窗:居中左右边距 32px · 底部弹窗左/右/下 0 · 无遮罩入库 · 无阴影 · 按钮 48px - 内容:[具体业务字段]