Figma Variables 如何让同一组件切换浅色和深色主题
来源:17golang原创
时间:2026-09-14 20:31:01 470浏览 收藏
同一个卡片组件既要放在浅色页面,也要放在深色页面时,不必复制两份再逐个改颜色。用 Figma Variables 保存两套值,再给组件指定对应的 mode,就能让背景和文字一起切换。官方地址:https://www.figma.com/
- 一个变量集合里建立 Light、Dark 两列,变量名保持语义化。
- 组件属性绑定变量后,改的是 mode,不是每个图层的固定颜色。
- 验收时要同时检查画布颜色、文字对比度和图层旁的 mode 标签。
关键做法是“同一变量、两套 mode、一次绑定”:先把主题值放进变量集合,再让组件继承或指定 mode。只切换变量面板里的列,不会自动改变画布,必须完成组件绑定和应用 mode 两步。
先把主题值放进同一个变量集合
第1步:打开变量视图。先在画布空白处按 Esc 取消选择,在右侧边栏找到 Local variables,点击 Open variables。新建集合并命名为 Theme,再创建两个 Color 类型变量:surface 用于卡片背景,text 用于主要文字。
第2步:增加深色 mode。在 Theme 集合表头右侧点击 New variable mode,把新列改名为 Dark。保留第一列为 Light,例如 surface 使用浅色背景、text 使用深色文字;在 Dark 列填入深色背景和浅色文字。两列的变量名必须相同,这样组件只需要绑定一次。

看到同一行同时出现 Light、Dark 两个值,就说明 mode 建立完成。变量集合的默认 mode 通常是第一列;如果暂时没有指定对象 mode,组件会先使用它。
把 surface 和 text 绑定到同一组件
第3步:绑定组件属性。关闭 Variables 视图,选中卡片的背景图层,在右侧 Appearance 区域点击填充颜色旁的变量图标,选择 Theme/surface。再选中文字图层,进入 Text 或颜色属性,选择 Theme/text。
绑定完成后,属性面板显示的是变量名,而不是一个孤立的十六进制颜色值。若卡片由多个嵌套图层组成,优先在主组件中完成绑定,实例会沿用这些变量;局部覆盖时再检查该图层是否被写入固定颜色。
切换 mode 后如何确认组件真的变了
第4步:指定深色模式。选中卡片组件或包含它的 Frame,在右侧 Appearance 区域点击 Apply variable mode。悬停 Theme 集合,选择 Dark。页面级切换时先取消所有对象选择,再从右侧 Page 区域使用同样的入口。
先看画布:卡片背景应变为 Dark 列的值,文字应变为另一列的值;再看 Layers 面板:组件名称旁应出现 mode 图标和 Dark 标签。最后切回 Light,确认两种状态都能恢复,而不是某个图层被固定值卡住。

切换没有生效时先查这三处
第一,检查颜色是否真的绑定到 Theme/surface 和 Theme/text,只建立 mode 不会替换固定颜色。第二,检查变量是否属于同一个本地集合,跨集合时需要分别确认集合的 mode。第三,检查父级是否已经指定了 mode:对象处于 Auto 时会继承父容器的设置,父级没有设置才回退到集合默认 mode。
如果只有文字变化而背景不变,通常是背景填充仍是固定色;如果组件切换后又恢复,检查实例是否存在局部覆盖。把 Light、Dark 两个状态各留一个验收 Frame,能更快发现遗漏。
相关问题
变量 mode 能不能用于间距或字号?
可以。变量不只保存颜色,也能保存数字、字符串和布尔值,因此可以用不同 mode 表达设备尺寸、文案语言或组件开关。不过每种变量仍要绑定到它支持的设计属性,不能把颜色变量直接用于字号。
组件和页面应该在哪里切换?
需要局部预览时选组件或 Frame,在 Appearance 中切换;需要整页预览时取消选择对象,在 Page 区域切换。局部对象设为 Auto,就会继续继承父级的 mode。
-
196 收藏
-
169 收藏
-
122 收藏
-
489 收藏
-
278 收藏
-
文章 · 软件教程 | 47分钟前 | 电商运营 · SkildArt教程 · AIGC营销 · AI素材制作 · 内容生产效率 · SkildArt营销素材效果差排查 AIGC电商素材生成问题解决 跨境运营AIGC素材适配技巧 AI生成营销素材文字错误处理 单变量迭代AIGC素材优化方法402 收藏
-
文章 · 软件教程 | 2小时前 | SkildArt教程 · 跨境运营工具 · 电商主图设计 · 设计效率提升 · 新手运营实操 · SkildArt电商主图制作教程 跨境电商主图设计方法 商品事实卡制作规范 电商主图三版构图技巧 SkildArt新手操作指南418 收藏
-
283 收藏
-
文章 · 软件教程 | 3小时前 | SkildArt教程 · 电商运营工具 · 跨境运营技巧 · AI作图避坑 · 商品内容合规 · SkildArt文字变形解决 AI商品图文字修复 电商包装生成技巧 跨境商品图合规 AI图文字回填方法265 收藏
-
文章 · 软件教程 | 4小时前 | SkildArt教程 · 电商运营工具 · AI电商素材 · 跨境运营技巧 · 素材制作避坑 · SkildArt生成素材不稳定 电商AI素材生成排查 跨境电商素材制作 AI生成商品图失真解决 电商多渠道素材适配334 收藏
-
459 收藏
-
文章 · 软件教程 | 4小时前 | 软件教程 · 电商设计 · SkildArt · 跨境运营 · 营销素材制作 · SkildArt电商设计工具入门 新手制作商品营销素材教程 跨境运营设计素材快速出图 SkildArt首个项目实操指南 电商多渠道素材适配方法369 收藏
-
文章 · 软件教程 | 5小时前 | SkildArt教程 · 电商运营工具 · 素材合规审核 · 商品主图制作 · 内容验收规范 · SkildArt电商成图验收方法 电商模板成图事实核对 电商主图渠道规格检查 AI电商素材版权校验 SkildArt成图交付标准111 收藏
-
文章 · 软件教程 | 5小时前 | 软件教程 · 电商运营 · 设计提效 · 素材管理 · 版本管控 · SkildArt电商模板提效 电商商品素材库搭建 多渠道营销版本管理 电商运营素材复用 电商设计标准化流程238 收藏
-
144 收藏
-
文章 · 软件教程 | 5小时前 | 电商素材制作 · SkildArt教程 · 营销运营工具 · 模板适配排查 · 导出异常处理 · SkildArt模板不生效排查 电商模板替换错位解决 SkildArt导出异常修复 电商场景模板适配教程 营销素材导出问题处理492 收藏
-
文章 · 软件教程 | 6小时前 | 效率工具 · 软件教程 · 电商运营 · 设计协作 · 工作流优化 · SkildArt Agent模式提效方法 电商素材产出协作技巧 可复用任务简报配置 标准化审核节点设置 运营设计协作提效方案372 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习