Spotify 设计系统.

Spotify 设计系统 — 音乐流媒体。深色背景搭配鲜艳绿色,粗体字体,以专辑封面为主导。

在真实场景中查看

同一套设计 token 应用于不同类型的产物——网站、应用、幻灯片、海报。这些是用该系统重新换肤的原创样稿,而非截图。

网站
幻灯片
应用
海报

设计 token

56 个 token,符合 Open Design 的 token 契约——你的 agent 读取的正是这套结构化的配色、字体、间距和动效值,用以为任意产物设定主题。

表面

  • --bg #121212
  • --surface #181818
  • --surface-warm #1f1f1f

文本

  • --fg #ffffff
  • --fg-2 #fdfdfd
  • --muted #b3b3b3
  • --meta #cbcbcb

边框

  • --border #4d4d4d
  • --border-soft rgba(255, 255, 255, 0.1)

强调色

  • --accent #1ed760
  • --accent-on #000000
  • --accent-hover #1db954
  • --accent-active color-mix(in oklab, var(--accent), black 10%)

语义

  • --success #1ed760
  • --warn #ffa42b
  • --danger #f3727f

字体排印

  • --font-display "SpotifyMixUITitle", "CircularSp", "Helvetica Neue", Helvetica, Arial, sans-serif
  • --font-body "SpotifyMixUI", "CircularSp", "Helvetica Neue", Helvetica, Arial, sans-serif
  • --font-mono ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace

字号层级

  • --text-xs 10px
  • --text-sm 12px
  • --text-base 16px
  • --text-lg 18px
  • --text-xl 20px
  • --text-2xl 24px
  • --text-3xl 24px
  • --text-4xl 24px
  • --leading-body 1.50
  • --leading-tight 1.00
  • --tracking-display normal

间距

  • --space-1 4px
  • --space-2 8px
  • --space-3 12px
  • --space-4 16px
  • --space-5 20px
  • --space-6 24px
  • --space-8 32px
  • --space-12 48px
  • --section-y-desktop 64px
  • --section-y-tablet 40px
  • --section-y-phone 24px

圆角

  • --radius-sm 9999px
  • --radius-md 6px
  • --radius-lg 8px
  • --radius-pill 9999px

层级阴影

  • --elev-flat none
  • --elev-ring 0 0 0 1px var(--border)
  • --elev-raised rgba(0, 0, 0, 0.3) 0px 8px 8px

聚焦

  • --focus-ring 0 0 0 3px rgba(30, 215, 96, 0.4)

动效

  • --motion-fast 150ms
  • --motion-base 200ms
  • --ease-standard ease

布局

  • --container-max 1280px
  • --container-gutter-desktop 24px
  • --container-gutter-tablet 16px
  • --container-gutter-phone 16px

受 Spotify 启发的设计系统

Category: 媒体与消费者 音乐流媒体。深色背景上的鲜明绿色、粗犷字体、以专辑封面为视觉核心。

1. 视觉主题与氛围

Spotify 的 Web 界面是一个沉浸式的深色音乐播放器,将听众包裹在近黑色的空间(#121212#181818#1f1f1f)中,专辑封面与内容成为色彩的主要来源。其设计理念是”内容优先的黑暗感”——UI 退入阴影,让音乐、播客和播放列表得以发光。每一个界面层次都是深浅不一的炭灰色,营造出剧院般的氛围,唯一真正的色彩来自标志性的 Spotify 绿(#1ed760)和专辑封面本身。

字体使用 SpotifyMixUI 和 SpotifyMixUITitle——这是来自 CircularSp 字族的专有字体(由 Lineto 设计的 Circular,经 Spotify 定制),并配备了包含阿拉伯语、希伯来语、西里尔语、希腊语、梵文及 CJK 字体的完整回退栈,体现了 Spotify 的全球化覆盖。字体系统紧凑而功能性强:700(粗体)用于强调和导航,600(半粗体)用于次要强调,400(常规)用于正文。按钮使用全大写搭配正字间距(1.4px–2px),呈现出系统性的标签感。

Spotify 的独特之处在于其胶囊与圆形的几何语言。主要按钮使用 500px–9999px 圆角半径(完整胶囊形),圆形播放按钮使用 50% 半径,搜索输入框为 500px 的胶囊形。结合悬浮元素上的重阴影(rgba(0,0,0,0.5) 0px 8px 24px)和独特的内嵌边框阴影组合(rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset),最终呈现出一个如同高端音频设备般的界面——触感圆润,专为触控而生。

核心特征:

  • 近黑色沉浸式深色主题(#121212#1f1f1f)——UI 隐退于内容之后
  • Spotify 绿(#1ed760)作为唯一品牌强调色——从不装饰性使用,始终功能性呈现
  • SpotifyMixUI/CircularSp 字族,支持全球文字系统
  • 胶囊按钮(500px–9999px)与圆形控件(50%)——圆润、触控优化
  • 按钮标签全大写搭配宽字间距(1.4px–2px)
  • 悬浮元素上的重阴影(rgba(0,0,0,0.5) 0px 8px 24px
  • 语义色:负面红(#f3727f)、警告橙(#ffa42b)、通告蓝(#539df5
  • 专辑封面是主要色彩来源——UI 本身在设计上保持无彩色

2. 色彩规范

主品牌色

  • Spotify 绿#1ed760):主品牌强调色——播放按钮、激活状态、CTA
  • 近黑色#121212):最深的背景层
  • 深色表面#181818):卡片、容器、悬浮表面
  • 中深色#1f1f1f):按钮背景、可交互表面

文字色

  • 白色#ffffff):--text-base,主要文字
  • 银色#b3b3b3):次要文字、静音标签、非激活导航
  • 近白色#cbcbcb):稍亮的次要文字
  • 浅色#fdfdfd):接近纯白,用于最高强调

语义色

  • 负面红#f3727f):--text-negative,错误状态
  • 警告橙#ffa42b):--text-warning,警告状态
  • 通告蓝#539df5):--text-announcement,信息状态

表面与边框

  • 深色卡片#252525):悬浮卡片表面
  • 中色卡片#272727):备用卡片表面
  • 边框灰#4d4d4d):深色背景上的按钮边框
  • 浅边框#7c7c7c):描边按钮边框、静音链接
  • 分隔线#b3b3b3):分割线
  • 浅色表面#eeeeee):浅色模式按钮(较少使用)
  • Spotify 绿边框#1db954):绿色强调边框变体

阴影

  • 重阴影rgba(0,0,0,0.5) 0px 8px 24px):对话框、菜单、悬浮面板
  • 中阴影rgba(0,0,0,0.3) 0px 8px 8px):卡片、下拉菜单
  • 内嵌边框rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset):输入框边框阴影组合

3. 字体规范

字族

  • 标题字体SpotifyMixUITitle,回退栈:CircularSp-Arab, CircularSp-Hebr, CircularSp-Cyrl, CircularSp-Grek, CircularSp-Deva, Helvetica Neue, helvetica, arial, Hiragino Sans, Hiragino Kaku Gothic ProN, Meiryo, MS Gothic
  • UI / 正文字体SpotifyMixUI,同上回退栈

层级

用途字体字号字重行高字间距备注
板块标题SpotifyMixUITitle24px (1.50rem)700normalnormal粗体标题字重
功能标题SpotifyMixUI18px (1.13rem)6001.30(紧凑)normal半粗体区段标题
正文粗体SpotifyMixUI16px (1.00rem)700normalnormal强调文字
正文SpotifyMixUI16px (1.00rem)400normalnormal标准正文
按钮大写SpotifyMixUI14px (0.88rem)600–7001.00(紧凑)1.4px–2pxtext-transform: uppercase
按钮SpotifyMixUI14px (0.88rem)700normal0.14px标准按钮
导航链接粗体SpotifyMixUI14px (0.88rem)700normalnormal导航
导航链接SpotifyMixUI14px (0.88rem)400normalnormal非激活导航
说明文字粗体SpotifyMixUI14px (0.88rem)7001.50–1.54normal粗体元数据
说明文字SpotifyMixUI14px (0.88rem)400normalnormal元数据
小字粗体SpotifyMixUI12px (0.75rem)7001.50normal标签、计数
小字SpotifyMixUI12px (0.75rem)400normalnormal细则文字
徽章SpotifyMixUI10.5px (0.66rem)6001.33normaltext-transform: capitalize
极小字SpotifyMixUI10px (0.63rem)400normalnormal最小文字

原则

  • 粗体/常规二元对立:大多数文字要么是 700(粗体)要么是 400(常规),600 仅少量使用。这通过字重对比而非字号变化来建立清晰的视觉层级。
  • 大写按钮即系统语言:按钮标签使用全大写加宽字间距(1.4px–2px),形成区别于内容文字的系统性”标签”声调。
  • 紧凑的字号区间:范围为 10px–24px——比大多数系统更窄。Spotify 的字体紧凑而功能性强,专为浏览播放列表而设计,而非阅读长文。
  • 全球文字支持:完整的回退栈(阿拉伯语、希伯来语、西里尔语、希腊语、梵文、CJK)反映了 Spotify 覆盖 180 多个市场的全球化布局。

4. 组件样式

按钮

深色胶囊

  • 背景:#1f1f1f
  • 文字:#ffffff#b3b3b3
  • 内边距:8px 16px
  • 圆角:9999px(完整胶囊)
  • 用途:导航胶囊、次要操作

深色大胶囊

  • 背景:#181818
  • 文字:#ffffff
  • 内边距:0px 43px
  • 圆角:500px
  • 用途:主要应用导航按钮

浅色胶囊

  • 背景:#eeeeee
  • 文字:#181818
  • 圆角:500px
  • 用途:浅色模式 CTA(Cookie 通知、营销页面)

描边胶囊

  • 背景:透明
  • 文字:#ffffff
  • 边框:1px solid #7c7c7c
  • 内边距:4px 16px 4px 36px(非对称,为图标留位)
  • 圆角:9999px
  • 用途:关注按钮、次要操作

圆形播放

  • 背景:#1f1f1f
  • 文字:#ffffff
  • 内边距:12px
  • 圆角:50%(圆形)
  • 用途:播放/暂停控件

卡片与容器

  • 背景:#181818#1f1f1f
  • 圆角:6px–8px
  • 大多数卡片无可见边框
  • 悬停时:背景轻微变亮
  • 阴影:悬浮状态下 rgba(0,0,0,0.3) 0px 8px 8px

输入框

  • 搜索输入框:#1f1f1f 背景,#ffffff 文字
  • 圆角:500px(胶囊形)
  • 内边距:12px 96px 12px 48px(考虑图标空间)
  • 聚焦时:边框变为 #000000,outline 1px solid

导航

  • 深色侧边栏,激活项使用 SpotifyMixUI 14px 字重 700,非激活项字重 400
  • 非激活项 #b3b3b3 静音色,激活项 #ffffff
  • 圆形图标按钮(50% 圆角)
  • 左上角 Spotify 绿色 Logo

5. 布局原则

间距系统

  • 基础单位:8px
  • 比例尺:1px、2px、3px、4px、5px、6px、8px、10px、12px、14px、15px、16px、20px

网格与容器

  • 固定侧边栏 + 主内容区
  • 基于网格的专辑/播放列表卡片
  • 底部全宽”正在播放”栏
  • 响应式内容区填充剩余空间

留白哲学

  • 深色压缩:Spotify 内容密度高——播放列表网格、曲目列表和导航都排列紧密。深色背景在元素之间提供了视觉休憩,无需大间距。
  • 内容密度优先于呼吸空间:这是一个应用,而非营销网站。每一个像素都服务于聆听体验。

圆角比例尺

  • 极小(2px):徽章、显式标签
  • 细微(4px):输入框、小元素
  • 标准(6px):专辑封面容器、卡片
  • 舒适(8px):板块、对话框
  • 中等(10px–20px):面板、浮层元素
  • 大(100px):大型胶囊按钮
  • 胶囊(500px):主要按钮、搜索输入框
  • 完整胶囊(9999px):导航胶囊、搜索框
  • 圆形(50%):播放按钮、头像、图标

6. 深度与层级

层级处理方式用途
基础层(Level 0)#121212 背景最深层,页面背景
表面层(Level 1)#181818#1f1f1f卡片、侧边栏、容器
悬浮层(Level 2)rgba(0,0,0,0.3) 0px 8px 8px下拉菜单、悬停卡片
对话层(Level 3)rgba(0,0,0,0.5) 0px 8px 24px模态框、浮层、菜单
内嵌层(边框)rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset输入框边框

阴影哲学:Spotify 对深色主题应用使用了明显偏重的阴影。0.5 不透明度、24px 模糊的阴影为对话框和菜单营造出”悬浮于黑暗中”的戏剧性效果,而 0.3 不透明度、8px 模糊的阴影则为卡片提供更为细腻的悬浮感。输入框上独特的内嵌边框阴影组合营造出凹陷的、有触感的质地。

7. 应做与避免

应做

  • 使用近黑色背景(#121212#1f1f1f)——通过色调深浅变化营造层次感
  • 仅将 Spotify 绿(#1ed760)用于播放控件、激活状态和主要 CTA
  • 所有按钮使用胶囊形(500px–9999px),播放控件使用圆形(50%)
  • 按钮标签使用全大写加宽字间距(1.4px–2px)
  • 保持紧凑的字号(10px–24px 范围)——这是应用,不是杂志
  • 对深色背景上的悬浮元素使用重阴影(0.3–0.5 不透明度)
  • 让专辑封面提供色彩——UI 本身保持无彩色

避免

  • 不要将 Spotify 绿用作装饰或背景——它仅作功能性使用
  • 不要将浅色背景用于主要表面——深色沉浸感是核心体验
  • 不要在按钮上跳过胶囊/圆形的几何语言——方形按钮会破坏品牌识别
  • 不要使用细弱的阴影——在深色背景上,阴影必须足够重才能显现
  • 不要添加额外的品牌色——绿色加无彩灰阶就是完整的色板
  • 不要使用宽松的行高——Spotify 的字体排版紧凑而密集
  • 不要暴露裸露的灰色边框——改用基于阴影或内嵌的边框方式

8. 响应式行为

断点

名称宽度关键变化
小屏手机<425px紧凑移动端布局
手机425–576px标准移动端
平板576–768px两列网格
大平板768–896px扩展布局
小桌面896–1024px侧边栏可见
桌面1024–1280px完整桌面布局
大桌面>1280px扩展网格

折叠策略

  • 侧边栏:完整 → 折叠 → 隐藏
  • 专辑网格:5 列 → 3 列 → 2 列 → 1 列
  • “正在播放”栏:所有尺寸下保持可见
  • 搜索框:胶囊形输入框保持,宽度自适应
  • 导航:侧边栏 → 移动端底部导航栏

9. Agent 提示词指南

快速色彩参考

  • 背景:近黑色(#121212
  • 表面:深色卡片(#181818
  • 文字:白色(#ffffff
  • 次要文字:银色(#b3b3b3
  • 强调色:Spotify 绿(#1ed760
  • 边框:#4d4d4d
  • 错误色:负面红(#f3727f

组件提示词示例

  • “创建一个深色卡片:#181818 背景,8px 圆角。标题使用 16px SpotifyMixUI 字重 700,白色文字。副标题使用 14px 字重 400,#b3b3b3。悬停时阴影 rgba(0,0,0,0.3) 0px 8px 8px。”
  • “设计一个胶囊按钮:#1f1f1f 背景,白色文字,9999px 圆角,8px 16px 内边距。14px SpotifyMixUI 字重 700,全大写,字间距 1.4px。”
  • “制作一个圆形播放按钮:Spotify 绿(#1ed760)背景,#000000 图标,50% 圆角,12px 内边距。”
  • “创建搜索输入框:#1f1f1f 背景,白色文字,500px 圆角,12px 48px 内边距。内嵌边框:rgb(124,124,124) 0px 0px 0px 1px inset。”
  • “设计导航侧边栏:#121212 背景。激活项:14px 字重 700,白色。非激活项:14px 字重 400,#b3b3b3。“

迭代指南

  1. #121212 开始——一切都生活在近黑的黑暗中
  2. Spotify 绿仅用于功能性高亮(播放、激活、CTA)
  3. 胶囊化一切——大型用 500px,小型用 9999px,圆形控件用 50%
  4. 按钮使用全大写加宽字间距——这是系统性的标签声调
  5. 使用重阴影(0.3–0.5 不透明度)表达层级——轻阴影在深色背景上不可见
  6. 专辑封面提供所有色彩——UI 保持无彩色
模式
design-system
场景
design
形态
web
Manifest ID
design-system-spotify

标签

  • design-system
  • first-party
  • design
  • media-consumer