Tabs 选中态字重改为 Body/Emphasized semibold (WEB-1352)
版本: 0.9.1 · 类型: 🐛 Bug 修复
问题
Community > Skills 的二级 tab(Discover / Installed / My contributions)选中态字重偏轻一档。设计标注要求选中态使用文字 token Body/Emphasized · 14/20。
根因
TABS_TRIGGER_BASE_CLASS 的选中态写的是 data-[state=active]:font-medium(500)。Figma Tabs 节点(5ssRkvUdqpsRwwW59ooQCp node 522:53227)的选中态文本实测为 fontWeight: 600 / Inter-SemiBold / 14 / 20,对应 token --Font-Weight-Emphasized: "Semibold"。字号与行高本来就是对的——实现直接取 --Font-Size-Body(14px)与 --Line-Height-Body(20px)——只有字重差一档。
设计规范文档与文档站排版表另有一处陈旧记录:行高写成 22px,而 token 实际是 20px。实现从未受影响,错的只有文档。
改动文件
packages/design/src/components/Tabs/styles.tspackages/design/src/components/Tabs/TabsDesignSpec.mdpackages/design/src/components/Tabs/__tests__/Tabs.test.tsxpackages/design-site/docs/components/tabs.mdx(及中文版)
改动内容
styles.ts:data-[state=active]:font-medium→data-[state=active]:font-semibold,并修正文件顶部规范注释里的字重与行高描述。TabsDesignSpec.md与文档站排版表:选中字重 500 → 600(semibold),行高 22px → 20px。Tabs.test.tsx:新增单测,断言 trigger 带data-[state=active]:font-semibold且不再带data-[state=active]:font-medium。
影响
- 所有使用
@plaud/designTabs 的页面,选中标签字重变为 600。 - 硬编码了选中态字重的调用方需要跟着改。
apps/web4的CommunitySkillsPage叠了一份invisible的固定宽度占位标签,用来消除「选中变粗导致整行 tab 抖动」;该占位原为font-medium,已同步改为font-semibold,否则占位撑不满真实宽度、抖动会回归。