布局与间距
:::tip 核心原则 间距系统基于 4px 基准网格,所有间距值均为 4 的倍数。通过统一的 Spacing Scale 管理,确保视觉节奏一致、层级分明。 :::
Spacing Scale(间距阶梯)
| Token | 值 | 用途 |
|---|---|---|
spacing-4 | 4px | 图标与文字间距、紧凑元素内间距 |
spacing-8 | 8px | 表单元素内间距、列表项间距 |
spacing-12 | 12px | 按钮内间距、卡片内元素间距 |
spacing-16 | 16px | 卡片内边距、区域间距 |
spacing-24 | 24px | 模块间距、分组间距 |
spacing-32 | 32px | 大区域间距 |
spacing-40 | 40px | 页面级区域间距 |
spacing-48 | 48px | 页面级大间距 |
spacing-72 | 72px | 页面顶部/底部大留白 |
Spacing 编号即像素值:
spacing-16= 16px,直观且无需换算。
Selection Guide(选择指南)
| 场景 | 推荐间距 | 说明 |
|---|---|---|
| 紧凑组件 (Inline) | 4–8px | 图标间距、标签内间距 |
| 列表/表格 | 8–12px | 行间距、单元格内间距 |
| 区域/容器 | 12–16px | 卡片边距、表单区域 |
| 页面区域 | 24–48px | 模块间距、段落间距 |
| 页面级 | 40–72px | 首屏留白、底部间距 |
Responsive Grid(响应式网格)
断点系统
| 断点 | 宽度 | 列数 | 间距 | 边距 |
|---|---|---|---|---|
| Desktop Standard | ≥ 1440px | 12 | 24px | auto |
| Desktop Compact | 1024–1439px | 12 | 20px | auto |
| Tablet Landscape | 768–1023px | 8 | 16px | 24px |
| Tablet Portrait | 600–767px | 4 | 16px | 16px |
| Mobile | < 600px | 4 | 12px | 16px |
内容最大宽度
- Desktop Standard — 最大内容宽度 1440px,居中显示
- Desktop Large — 最大内容宽度 1200px,居中显示
Page Layout(页面布局)
页面布局遵循以下结构:
- 顶部导航栏固定,高度 64px
- 左侧导航栏宽度 240px(可折叠)
- 内容区自适应剩余空间
- 内容区左右内边距 24–48px(响应式调整)
:::info 布局原则
- 内容区始终居中于可用空间
- 侧边栏折叠后内容区自动扩展
- 移动端隐藏侧边栏,使用汉堡菜单 :::
Border Radius(圆角)
| Token | 值 | 用途 |
|---|---|---|
radius-2 | 2px | 小元素(标签、徽章) |
radius-4 | 4px | 输入框、按钮 |
radius-5 | 5px | 默认组件圆角 |
radius-8 | 8px | 卡片、下拉菜单 |
radius-12 | 12px | 大卡片、弹窗 |
radius-16 | 16px | 模态框、浮层 |
radius-full | 9999px | 药丸形状、头像 |
圆角通过 CSS 变量引用:
border-radius: var(--Radius_5)
Shadows & Elevation(阴影与层级)
Drop Shadow(外阴影)
| 层级 | 参数 | 用途 |
|---|---|---|
| Default | 0 1px 3px rgba(0,0,0,0.08) | 卡片默认态 |
| Emphasized | 0 4px 12px rgba(0,0,0,0.12) | 卡片悬浮态、下拉菜单 |
Layer Shadow(层级阴影)
| 层级 | 参数 | 用途 |
|---|---|---|
| Layer 1 | 0 1px 2px rgba(0,0,0,0.06) | 微弱分层 |
| Layer 2 (Elevated) | 0 4px 16px rgba(0,0,0,0.1) | 浮层、弹窗 |
Accessibility(无障碍)
最小点击区域
所有可交互元素的点击区域不小于 44 × 44px(WCAG 2.1 AA)。
间距一致性
同一容器内的元素间距必须一致,避免视觉节奏混乱。
触控友好
移动端间距适当增大,确保手指操作的舒适性。
Design Checklist(设计检查清单)
在每次设计评审前确认:
- 所有间距值来自 Spacing Scale(4 的倍数)
- 圆角使用 Token 引用,非硬编码
- 响应式断点正确适配 Grid 规则
- 可交互元素点击区域 ≥ 44px
- 页面布局遵循 Grid 系统
- 阴影层级与元素层级匹配
使用方式
Tailwind Class
// 间距
<div className="px-16 py-8 gap-8" /> // padding-x: 16px, padding-y: 8px, gap: 8px
<div className="p-24 mb-32" /> // padding: 24px, margin-bottom: 32px
// 圆角
<div className="rounded-[var(--Radius_5)]" />
<div className="rounded-full" /> // 药丸形状
// 阴影
<div className="shadow-sm" /> // Default shadow
<div className="shadow-md" /> // Emphasized shadow