Figma 变量模式怎样切换设计主题
Figma 通过同一变量集合中的不同模式切换设计主题:先为同名颜色变量填写 Light、Dark 两套值,再把图层属性绑定到这些变量,最后在画框上选择该集合的模式。切换模式不会自动替换写死的色值,只有已经绑定并按模式解析的属性才会变化。
官方地址:https://help.figma.com/hc/en-us/articles/15343816063383-Modes-for-variables
先明确完成后的画面
本例制作一张“阅读卡片”:画框背景、卡片底色和正文颜色分别由 bg/canvas、bg/card、text/body 控制。完成后,在同一个画框选择 Dark,应同时看到深色背景、稍浅的卡片和浅色文字;切回 Light,布局和文字内容保持原样。
需要文件编辑权限,以及支持多个变量模式的方案。可创建模式数量随方案而异;如果看不到新增模式入口,应先确认账号可用功能。下面使用官方文档中的英文界面标签辅助定位,插图均为原创操作说明图,不是真实软件截图或本次操作记录。
步骤一:在 Variables 中建立主题集合与两列模式
点击左侧导航的 Variables 打开变量视图。选用一个专用于本例的集合并命名为 Theme;需要新集合时,在变量侧栏的 More options → Create collection 创建。如果文件尚无变量,可先用 + Create variable → Color 建立首个颜色变量,再整理集合。
在集合内创建下面三个 Color 变量,把第一列模式命名为 Light。然后点击列标题右侧 New variable mode,新增 Dark,并逐项修改 Dark 列的值。新模式起初复制已有列的值,新增一列并不代表已经产生暗色主题。
| 变量名 | Light | Dark |
|---|---|---|
| bg/canvas | #F3F5F7 | #111827 |
| bg/card | #FFFFFF | #1F2937 |
| text/body | #172033 | #F3F4F6 |

进入下一步前,确认 Theme 中是三行变量、两列不同模式值,而不是建立两套互不关联的 Light 变量和 Dark 变量。本例色值仅用于演示,不能据此声称完整产品已通过对比度检查。
步骤二:把 Fill 属性绑定到变量
回到画布,创建或选中阅读卡片所在的外层画框。选中画框后,在右侧 Fill → Apply styles and variables 打开选择器,搜索并选择 Theme 中的 bg/canvas。再选中卡片底层矩形,在同一路径选择 bg/card;最后选中正文文字层,为其 Fill 选择 text/body。

完成状态应是三个目标属性都关联到变量,而不是只把颜色手动改成表格里的十六进制值。变量选择器中的颜色变量使用方形色块,颜色样式则使用圆形色块;不要只凭颜色相同就认定选中了同一个变量。
步骤三:在画框 Appearance 中选择 Dark
选中包含上述图层的外层画框,在右侧 Appearance → Apply variable mode → Theme → Dark 选择模式。对象及其嵌套图层需要用到包含多个模式的变量,才能按对应条件切换。设置后,左侧 Layers 的画框名称附近会出现模式标签。

现在分别观察背景、卡片与文字,再用同一路径选择 Light。目标是两套值都能正确显示,而不只是模式菜单里出现了一个名称。如果希望子图层跟随父容器,将其模式设置为 Auto;子图层显式指定 Light 时,不会因为外层切成 Dark 就自动放弃自身的指定模式。
只有部分颜色变化时,按属性排查
| 现象 | 应查看的位置 | 修正动作 |
|---|---|---|
| 一个图形始终不变 | 该层 Fill 的变量关联 | 将写死色值重新绑定到目标变量 |
| 某个子容器始终明亮 | 该容器 Apply variable mode | 按设计意图改为 Auto 或正确模式 |
| 切换后视觉一样 | Theme 的两列值 | 填写真正不同的主题值 |
| 模式旁有冲突提示 | 变量库版本及引用链 | 发布源库更新,并在使用文件中接受相应更新 |
集合默认模式也不等于对象显式选择的模式。修改集合默认列会影响依赖默认值的对象;已显式指定某个模式的对象仍保持该指定。第一次练习建议只用本地 Theme 集合,避免同时引入跨文件库更新问题。
交接时保存哪些信息
在设计文件说明中记录集合名 Theme、变量名、两列模式名,以及哪个外层画框负责指定模式。保留一份 Light 和一份 Dark 展示副本可以方便评审,但主题能力本身应来自变量绑定,不靠逐层重新改色。
Figma 界面切成深色,设计会同步变吗?
软件自身的界面外观与画布设计变量是两件事。设计内容需要按上述方式绑定变量并选择对应模式。
每个图层都必须指定 Dark 吗?
不需要。让外层容器指定模式、内部使用 Auto,更容易统一管理;需要独立展示另一主题的局部区域才另行指定。
画框切换主题会自动让上线网页切换主题吗?
不会。这里切换的是设计文件中的变量取值。实际应用仍需要实现自己的主题变量、状态和切换逻辑。
GitHub Actions matrix.include 怎样表达差异参数
- 上一篇
- GitHub Actions matrix.include 怎样表达差异参数
- 下一篇
- Obsidian Bases 怎样把笔记属性汇总成可筛选表格
-
- 文章 · 软件教程 | 8分钟前 |
- GitHub Actions matrix.include 怎样表达差异参数
- 100浏览 收藏
-
- 文章 · 软件教程 | 12分钟前 |
- GitHub Actions workflow_dispatch 怎样添加手动输入参数
- 421浏览 收藏
-
- 文章 · 软件教程 | 15分钟前 | 开发工具 · vs code ·
- VS Code Tasks 怎样让多根工作区命令指向指定文件夹
- 353浏览 收藏
-
- 文章 · 软件教程 | 24分钟前 | docker ·
- Docker Desktop 怎样查看镜像占用空间并清理无用镜像
- 423浏览 收藏
-
- 文章 · 软件教程 | 29分钟前 |
- Docker buildx bake 怎样让 target 继承公共配置
- 304浏览 收藏
-
- 文章 · 软件教程 | 32分钟前 | git ·
- Git rebase --rebase-merges 怎样保留分支拓扑
- 309浏览 收藏
-
- 文章 · 软件教程 | 34分钟前 |
- Docker Compose 怎样为单服务注入 env 文件
- 165浏览 收藏
-
- 文章 · 软件教程 | 36分钟前 | 开发工具 · Git monorepo sparse-checkout 稀疏检出 cone模式
- Git sparse-checkout 怎样只签出 monorepo 子目录
- 288浏览 收藏
-
- 文章 · 软件教程 | 1天前 |
- Atlas 怎么只生成 schema diff SQL 而不直接修改数据库
- 323浏览 收藏
-
- 文章 · 软件教程 | 1天前 | 数据库迁移 · Atlas migrate lint Atlas迁移检查 数据库迁移预检
- Atlas migrate lint 怎么在部署前检查迁移是否可重放
- 172浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 912次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 919次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 998次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 992次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 813次使用
-
- VS Code Markdown 预览怎样同步定位当前标题
- 2026-11-04 501浏览
-
- VS Code 怎么给 Go 项目配置测试任务:tasks.json 运行与结果验收
- 2026-07-09 501浏览
-
- Windows 11 如何开启 HEIF 图片支持
- 2026-05-31 501浏览
-
- TikTok用户画像与付费订阅变现方法
- 2026-05-27 501浏览
-
- 学信网学历翻译件申请方法
- 2026-05-27 501浏览

