什么是设计系统
设计系统不仅仅是一组 UI 组件,它是一套 完整的设计语言,包含了颜色、排版、间距、动效等各个维度的规范。
CSS Custom Properties 的力量
使用 CSS 变量作为设计 Token 是最灵活的方式:
:root {
--c-accent: #6d28d9;
--c-accent-light: #8b5cf6;
--f-sans: 'Inter', sans-serif;
--space-4: 1rem;
--radius-md: 10px;
}
暗色模式支持
[data-theme='dark'] {
--c-bg: #0c0a09;
--c-text: #fafaf9;
--c-accent: #a78bfa;
}
只需要切换 data-theme 属性,所有使用变量的地方都会自动更新。
排版系统
好的排版是阅读体验的基础:
- 正文:使用衬线字体,提升中文阅读舒适度
- 标题:使用无衬线字体,增强视觉层次
- 代码:使用等宽字体,保证代码对齐
间距系统
采用 4px 基础单位的倍数系统:
--space-1: 0.25rem; /* 4px */
--space-2: 0.5rem; /* 8px */
--space-4: 1rem; /* 16px */
--space-8: 2rem; /* 32px */
微动画
适当的动画能提升用户体验,但过多的动画会造成干扰。我们遵循以下原则:
- 目的性:每个动画都有明确的目的
- 克制:持续时间控制在 150-500ms
- 一致性:统一的缓动函数
好的设计系统应该是隐形的——用户不会注意到它的存在,但会感受到它带来的和谐与一致。
总结
一套好的设计系统能极大提升开发效率和产品一致性。从 CSS Custom Properties 开始,逐步建立你自己的设计语言吧。