# 浅蓝色 UI 规范 > 本文档由设计稿截图(`1.1 全局样式-色彩`、`1.2 全局样式-色彩附录`)识别整理而成。 > 全部色值已与"色彩附录"编号表逐一核对,保证准确。 --- ## 1.1 色彩体系总览 调色体系分为 **主色** 与 **辅色** 两大类。每个色相按用途分为若干阶梯: | 阶梯 | 数量 | 用途 | | --- | --- | --- | | 浅色 | 3 | 用于大面积底色 | | 中亮色 | 6 | 用于标签、图表、提示等 | | 深色 | 4(+基准色,共 5 个深阶) | 用于小面积按钮、图标等 | | 线性渐变色 | 1 | 用于特殊装饰性小面积底色 | | 径向渐变色 | 1 | 用于特殊装饰性小面积底色 | > 中性色(灰阶)略有不同:浅色用于背景 / 白色文字及分割线,中亮色用于备注文字及图标,深色用于正文,且**无渐变色**。 --- ## 主色 ### 主色 - 红(基准 `#CF1322`) | 用途 | 色值 | | --- | --- | | 浅色 | `#FEFAFA` · `#FEF6F6` · `#FEEDED` | | 中亮色 | `#FDDADC` · `#FCB5B9` · `#FA9196` · `#F86C73` · `#F74750` · `#F5222D` | | 深色 | `#CF1322` · `#BC0D1E` · `#A8071A` · `#820014` · `#5C0011` | | 线性渐变色 | `#F5222D` → `#A8071A` | | 径向渐变色 | `#F86C73` → `#F5222D` | ### 主色 - 蓝(基准 `#0062D9`) | 用途 | 色值 | | --- | --- | | 浅色 | `#F9FCFF` · `#F4F9FF` · `#EAF4FF` | | 中亮色 | `#D4E9FF` · `#AAD2FF` · `#80BCFF` · `#55A6FE` · `#2B8FFE` · `#0079FE` | | 深色 | `#0062D9` · `#0056C6` · `#004AB3` · `#00368C` · `#002466` | | 线性渐变色 | `#0079FE` → `#004AB3` | | 径向渐变色 | `#55A6FE` → `#0079FE` | --- ## 辅色 ### 辅色 - 橙(基准 `#D97B00`) | 用途 | 色值 | | --- | --- | | 浅色 | `#FFFCF9` · `#FFFAF4` · `#FFF6EA` | | 中亮色 | `#FFEED4` · `#FFDDAA` · `#FFCC80` · `#FFBB55` · `#FFAA2B` · `#FF9900` | | 深色 | `#D97B00` · `#C66D00` · `#B35F00` · `#8C4600` · `#663000` | | 线性渐变色 | `#FF9900` → `#B35F00` | | 径向渐变色 | `#FFBB55` → `#FF9900` | ### 辅色 - 绿(基准 `#1EB07F`) | 用途 | 色值 | | --- | --- | | 浅色 | `#FAFEFD` · `#F6FDFB` · `#EEFCF7` | | 中亮色 | `#DCF8EE` · `#BAF1DD` · `#97EBCD` · `#74E4BC` · `#52DDAB` · `#2FD69A` | | 深色 | `#1EB07F` · `#189D72` · `#118A65` · `#07634B` · `#043D30` | | 线性渐变色 | `#2FD69A` → `#118A65` | | 径向渐变色 | `#74E4BC` → `#2FD69A` | ### 辅色 - 青蓝(基准 `#2F9ACC`) | 用途 | 色值 | | --- | --- | | 浅色 | `#FBFDFE` · `#F7FCFE` · `#EFFAFE` | | 中亮色 | `#E0F5FD` · `#C1EBFB` · `#A2E1F9` · `#83D7F7` · `#64CDF5` · `#45C3F3` | | 深色 | `#2F9ACC` · `#2788B9` · `#1E76A6` · `#115580` · `#0B3959` | | 线性渐变色 | `#45C3F3` → `#1E76A6` | | 径向渐变色 | `#83D7F7` → `#45C3F3` | ### 中性色 - 灰(基准 `#222222`) | 用途 | 色值 | | --- | --- | | 浅色(背景、白色文字及分割线) | `#FFFFFF` · `#FAFAFA` · `#F5F5F5` | | 中亮色(备注文字及图标) | `#E8E8E8` · `#DBDBDB` · `#C1C1C1` · `#A6A6A6` · `#7F7F7F` · `#575757` | | 深色(正文) | `#3D3D3D` · `#222222` | --- ## 1.2 色彩附录(编号对照表) 编号规则:`ZS` = 主色(主色调),`FS` = 辅色 / 中性色。`-01~-03` 为浅色,`-04~-09` 为中亮色,`-10~-13` 为深色,`-14` 为线性渐变色,`-15` 为径向渐变色;不带后缀的为该色相基准深色。 ### 主色 ZS | 编号 | 红 (ZS-001) | 编号 | 蓝 (ZS-002) | | --- | --- | --- | --- | | ZS-001 | `#CF1322` | ZS-002 | `#0062D9` | | ZS-001-01 | `#FEFAFA` | ZS-002-01 | `#F9FCFF` | | ZS-001-02 | `#FEF6F6` | ZS-002-02 | `#F4F9FF` | | ZS-001-03 | `#FEEDED` | ZS-002-03 | `#EAF4FF` | | ZS-001-04 | `#FDDADC` | ZS-002-04 | `#D4E9FF` | | ZS-001-05 | `#FCB5B9` | ZS-002-05 | `#AAD2FF` | | ZS-001-06 | `#FA9196` | ZS-002-06 | `#80BCFF` | | ZS-001-07 | `#F86C73` | ZS-002-07 | `#55A6FE` | | ZS-001-08 | `#F74750` | ZS-002-08 | `#2B8FFE` | | ZS-001-09 | `#F5222D` | ZS-002-09 | `#0079FE` | | ZS-001-10 | `#BC0D1E` | ZS-002-10 | `#0056C6` | | ZS-001-11 | `#A8071A` | ZS-002-11 | `#004AB3` | | ZS-001-12 | `#820014` | ZS-002-12 | `#00368C` | | ZS-001-13 | `#5C0011` | ZS-002-13 | `#002466` | | ZS-001-14 | `#F5222D` → `#A8071A` | ZS-002-14 | `#0079FE` → `#004AB3` | | ZS-001-15 | `#F86C73` → `#F5222D` | ZS-002-15 | `#55A6FE` → `#0079FE` | ### 辅色 / 中性色 FS | 编号 | 橙 (FS-001) | 绿 (FS-002) | 青蓝 (FS-003) | 中性灰 (FS-004) | | --- | --- | --- | --- | --- | | FS-00n | `#D97B00` | `#1EB07F` | `#2F9ACC` | `#222222` | | -01 | `#FFFCF9` | `#FAFEFD` | `#FBFDFE` | `#FFFFFF` | | -02 | `#FFFAF4` | `#F6FDFB` | `#F7FCFE` | `#FAFAFA` | | -03 | `#FFF6EA` | `#EEFCF7` | `#EFFAFE` | `#F5F5F5` | | -04 | `#FFEED4` | `#DCF8EE` | `#E0F5FD` | `#E8E8E8` | | -05 | `#FFDDAA` | `#BAF1DD` | `#C1EBFB` | `#DBDBDB` | | -06 | `#FFCC80` | `#97EBCD` | `#A2E1F9` | `#C1C1C1` | | -07 | `#FFBB55` | `#74E4BC` | `#83D7F7` | `#A6A6A6` | | -08 | `#FFAA2B` | `#52DDAB` | `#64CDF5` | `#7F7F7F` | | -09 | `#FF9900` | `#2FD69A` | `#45C3F3` | `#575757` | | -10 | `#C66D00` | `#189D72` | `#2788B9` | `#3D3D3D` | | -11 | `#B35F00` | `#118A65` | `#1E76A6` | — | | -12 | `#8C4600` | `#07634B` | `#115580` | — | | -13 | `#663000` | `#043D30` | `#0B3959` | — | | -14 | `#FF9900` → `#B35F00` | `#2FD69A` → `#118A65` | `#45C3F3` → `#1E76A6` | — | | -15 | `#FFBB55` → `#FF9900` | `#74E4BC` → `#2FD69A` | `#83D7F7` → `#45C3F3` | — | > 注:中性灰(FS-004)无渐变阶,最深至 `#222222`(基准)/`#3D3D3D`(FS-004-10),用于正文文字。 --- # 组件规范 > 以下为各组件的视觉规范与实现方式。颜色统一引用上文色值,建议在项目中先抽取为 CSS 变量 / Tailwind token,组件只引用语义化变量。 ## 语义化 Token 建议 把色彩体系映射成语义变量,组件层只用语义名,便于换肤与维护: ```css :root { /* 品牌 / 主色(蓝) */ --color-primary: #0062D9; /* 主按钮、实底选中:ZS-002 深色基准 */ --color-primary-hover: #0079FE; /* 悬浮态:ZS-002-09 */ --color-primary-active: #0056C6; /* 按下态:ZS-002-10 */ --color-primary-bg: #EAF4FF; /* 浅底选中底色:ZS-002-03 */ --color-primary-border: #0079FE; /* 描边选中边框 */ /* 中性 */ --color-text: #3D3D3D; /* 正文:FS-004-10 */ --color-text-secondary: #A6A6A6; /* 次要 / 占位符:FS-004-07 */ --color-border: #DBDBDB; /* 默认边框:FS-004-05 */ --color-bg-disabled: #F5F5F5; /* 失效底色:FS-004-03 */ --color-fill-disabled: #A6A6A6; /* 主按钮失效底色:FS-004-07 */ --color-surface: #FFFFFF; /* 卡片 / 控件底 */ } ``` > 项目使用 Tailwind v4 + shadcn,可在 `@theme` 中声明这些变量后用 `bg-primary` / `text-primary` 等使用;下文示例同时给出等价的 Tailwind 写法。 --- ## 2.1 基础 - 按钮(Button) ### 按钮尺寸 | 规格 | 高度 | 圆角 | 用途 | | --- | --- | --- | --- | | 小 | **28px** | 4px | 空间小的板块内部,如表格中、卡片标题等 | | 正常 | **32px** | 4px | 常用按钮(默认尺寸) | 水平内边距约 12–16px,字号 14px,图标与文字间距 4–8px。 ### 常用按钮类型 | 类型 | 视觉 | 用途 | | --- | --- | --- | | 主按钮 | 实底 `--color-primary`,白字 | 一个操作区域**只能有一个**主按钮 | | 主按钮·失效 | 实底灰 `--color-fill-disabled`,白字 | 主按钮禁用态 | | 次要按钮 | 白底 + `--color-primary` 边框 + 蓝字 | 重要度低于主按钮,高于默认按钮 | | 默认按钮 | 白底 + `--color-border` 边框 + `--color-text` | 默认动作(取消等) | | 默认·失效 | `--color-bg-disabled` 底 + 浅边框 + `--color-text-secondary` | 次要/默认按钮禁用态 | | 文本按钮 | 无边框无底,蓝字(可加下划线) | 表格操作、文件下载等 | | 图标按钮 | 仅图标,可选 描边/实底/浅底 × 方形/圆形 | 增强辨识度或节省空间 | 实现(Tailwind 示意): ```tsx // 主按钮 // 次要按钮(次按钮) // 默认按钮 // 文本按钮 // 图标按钮(实底圆形) ``` 图标按钮三种底 × 两种形状: - **描边**:白底 + `--color-border` 边框,图标用 `--color-text` - **实底**:`--color-primary` 底 + 白图标 - **浅底**:`--color-primary-bg`(`#EAF4FF`)底 + 蓝图标 - 形状:方形 `rounded`(4px)/ 圆形 `rounded-full` ### 按钮组合 | 组合 | 说明 | | --- | --- | | 文字 + 下拉按钮 | 按钮右侧带 `⌄` 箭头;有 默认 / 主按钮 两种变体 | | 图标 + 文字按钮 | `+ 正常`,前置图标;有 描边 / 实底 两种变体 | | 文本按钮 + 图标 | 蓝色文本链按钮:`更多 »` `展开 ⌄` `下一页 »|` `收起 ⌃` `|⌜ 上一页` | | 主按钮 + 默认按钮 | `确定`(主) `取消`(默认) `返回`(默认) 并排,间距 8–12px | ### 其他状态 - **悬浮状态(hover)**:主按钮悬浮时底色变亮(`--color-primary-hover` `#0079FE`),用于 Banner / 登录 / 视觉冲击强的场景。 - **加载中(loading)**:按钮内前置旋转图标 `⟳ 加载中`,期间 `disabled` 并降低交互;用于异步操作等待反馈。 ```tsx ``` --- ## 5.9 输入 - 单选框(选择按钮 / Segmented Radio) 一组互斥选项,外观为按钮组。两种排布 × 三种选中样式。 ### 排布方式 | 排布 | 说明 | | --- | --- | | 拼接式 | 选项首尾相连,仅最外侧两角圆角,相邻共用 1px 边框 | | 分离式 | 选项之间留间距(约 8px),每个独立 4px 圆角,各自带完整边框 | ### 选中(已选)样式 × 三种 | 样式 | 已选 | 未选 | | --- | --- | --- | | 描边式 | 白底 + 蓝边框 `--color-primary` + 蓝字 | 白底 + `--color-border` 边框 + `--color-text` | | 浅底式 | `--color-primary-bg`(`#EAF4FF`) 底 + 蓝字 + 蓝边框 | 同上 | | 实底式 | `--color-primary` 实底 + 白字 | 同上 | - **带统计**:选项文字后追加计数,如 `已选(230)` / `未选(230)`,计数用次要色 `--color-text-secondary`。 实现(拼接式 + 描边选中): ```tsx
{options.map((o) => ( ))}
``` > 浅底式把选中态换成 `bg-[#EAF4FF] text-[#0062D9]`;实底式换成 `bg-[#0062D9] text-white`。 > 分离式去掉 `divide-x` / `overflow-hidden`,外层用 `gap-2`,每个按钮单独 `rounded border`。 ### 按钮式页签(Tab as Button) 图标 + 文字的页签型按钮: - **激活** 两种:描边(白底 + 蓝边框 + 蓝字)/ 实底(`--color-primary` 底 + 白字) - **正常**:白底 + `--color-border` 边框 + `--color-text`,前置图标 - 结构与拼接式选择按钮一致,区别在每项前置一个功能图标。 --- ## 5.11 输入 - 选择器(Select / Dropdown) 单项输入选择,下拉单选。 ### 状态 | 状态 | 触发框 | | --- | --- | | 占位 | `请选择` 占位文字用 `--color-text-secondary`,灰边框 `--color-border`,右侧 `⌄` | | 展开/聚焦 | 边框变 `--color-primary`,箭头翻转为 `⌃` | | 已选 | 显示选中项文字(正文色),保持聚焦时蓝边框 | ### 下拉面板 - 白底、圆角 4px、投影(如 `shadow-lg`),最大高度后出现滚动条 - 选项默认 `--color-text`;**hover / 选中** 项:`--color-primary-bg`(`#EAF4FF`) 底 + `--color-primary` 文字 - **分组**:分组标题用小号灰字 `--color-text-secondary`,组之间用 1px 分割线 `--color-border` 实现示意: ```tsx // 触发框 // 下拉项
  • {label}
  • // 分组标题
    分组标题1
    ``` > 推荐直接基于 Radix `Select`(项目已有 shadcn 封装)改这些类名落地。 --- ## 5.14 输入 - 开关(Switch) 两种形态: ### 1. 滑块开关(多用于表单、表格中) - **开**:胶囊底 `--color-primary`,白色圆形滑块在右,左侧白字「开」 - **关**:胶囊底灰 `--color-text-secondary`/`#C1C1C1`,滑块在左,右侧灰字「关」 - 切换时滑块带左右过渡动画 ```tsx ``` ### 2. 单选框作为开关(分段式) - `开 | 关` 两段式:激活段 `--color-primary` 实底白字,未激活段白底灰字 + `--color-border` 边框 - 即 5.9 拼接式「实底选择按钮」的两选项特例 ```tsx
    ```