Figma 自动布局入门:做一套可复用按钮组件与间距系统

你将学到什么

目标是用一套“可复用 + 可扩展 + 不容易乱”的方式,在 Figma 里做出按钮组件(Primary/Secondary/Destructive…)并配好 Hover/Pressed/Disabled 等状态。做完后,你在任何页面只需要拖一个组件出来,改文字、改尺寸就能自动对齐排版。

准备:先把基础变量定下来(5 分钟)

在开始画按钮之前,先把项目里最容易失控的 3 件事固定:间距、圆角、字号。建议你按下面的最小集合来做:

1)间距:4 / 8 / 12 / 16 / 24(单位:px)

2)圆角:8(默认),12(大按钮可用)

3)字号:12(辅助)、14(正文)、16(重点)

这些数字不用追求完美,先保证“全项目统一”。后面要调整也只改一处。

第 1 步:做按钮的基础容器(Auto Layout)

1)新建一个 Frame(快捷键 F),命名为 Button/ 。

2)在里面放一个文本层(T),输入“按钮”。

3)选中文本层和 Frame,点击右侧 Auto layout(或 Shift + A)。

4)设置 Auto layout:

- Direction:Horizontal

- Padding:左右 16,上下 10(可用 12/8 也行,关键是统一)

- Spacing between items:8(后面加图标会用到)

- Alignment:Center

5)给容器加 Fill 颜色(例如 #1677FF),文字设为白色。

第 2 步:让按钮“内容自适应”而不是固定宽高

很多人按钮做完会在不同页面被拉扁/拉长,核心原因是用固定尺寸。正确做法:

1)选中按钮容器(Auto layout 的那个 Frame)

2)Width/Height 设为 Hug contents

3)文本层的 Resizing 设为 Hug contents

这样当你把“按钮”改成“立即购买”,按钮会自己变宽,内边距仍然保持一致。

第 3 步:补齐按钮的最小状态集(Default/Hover/Pressed/Disabled)

按钮如果只有一个样式,落地到开发会反复沟通。建议最小状态集如下:

- Default:主色填充 + 白字

- Hover:填充颜色加深 6%~10%

- Pressed:再加深或加 1px 内阴影

- Disabled:降低不透明度(例如 40%)并禁用阴影

做法:

1)复制 3 份按钮容器(Cmd/Ctrl + D)

2)分别命名为 Button/Primary/Default、Button/Primary/Hover…

3)仅修改颜色/阴影,不要动内边距和字体

第 4 步:把 4 个状态合成一个组件(Variants)

1)选中 4 个按钮 Frame

2)右键:Create component set

3)在右侧 Properties 里,把 Variant 属性命名为 state,值为 Default / Hover / Pressed / Disabled

4)把组件集命名为 Button/Primary

这样你在画页面时只拖一个 Button/Primary,然后在 state 下拉里切换状态。

第 5 步:扩展尺寸与类型(S/M/L + Primary/Secondary)

扩展建议一次只加一个维度,避免组件集爆炸:

1)先加 size:S/M/L(主要差在 padding 和字号)

2)再加 type:Primary/Secondary/Destructive(主要差在色彩与边框)

如果你是第一次做组件库,建议先做 size + state 两个属性就够用。

第 6 步:可维护的命名与交付小技巧

推荐命名:

- 组件:Button

- 属性:type、size、state、icon

- 值:Primary/Secondary、S/M/L、Default/Hover/Pressed/Disabled、None/Left/Right

交付时给开发的 3 句话:

1)按钮使用 Auto Layout,宽高 Hug contents

2)内边距和间距跟随 size 变量

3)状态只改颜色/阴影,不改布局

常见问题排查

- 改文字后按钮不跟着变宽:检查容器和文本是否都是 Hug contents。

- 图标和文字不对齐:检查 Auto layout 的 Alignment 是否 Center,以及图标是否有不必要的透明边。

- 组件一用就“散架”:避免在实例上解除 Auto layout;需要特殊样式时新增 variant,不要在页面里硬改。

下一步你可以怎么升级

当你把 Primary 做顺手后,可以继续补:

1)Secondary(描边按钮)

2)Destructive(危险操作)

3)带图标的 Icon Button(仅图标)

统一规则不变:先定变量、再做 Auto Layout、最后用 Variants 管状态。

用户评论 (0)

登录后参与讨论

立即登录 注册账号

暂无评论,快来抢沙发吧~

操作成功