CSS 变量提取器
粘贴一份样式表,提取其中每一个 --custom-property,按前缀分组,
并标记出重复定义。
扫描每一个选择器块,不仅限于 :root。同名变量在不同选择器中值不同会被标记为重复。
分组后的变量会显示在这里。
工作原理
输入内容会按规则块逐个扫描(匹配 selector { ... }
这样的配对,包括媒体查询等嵌套情况),每个块内的
--name: value; 声明都会与其所属的选择器一起被记录下来。变量
按前缀分组,也就是开头 -- 之后第一个连字符分隔的片段,
所以 --color-primary-500 和 --color-accent 都会
归入 "color" 分组,这与大多数设计 token 命名规范的组织方式一致。
只有当一个名字在别处被声明为真正不同的值时才会被标记为重复,
而不是仅仅在另一个选择器下用相同的值重复声明(这是主题覆盖的正常写法)。
一切都在本页面的 JavaScript 中随按键实时运行,使用的是一个轻量级的 括号匹配扫描器,而不是完整的 CSS 解析器。你粘贴的内容不会被上传。
常见问题
它会找出哪些自定义属性?
任何选择器块内形如 --name: value; 的声明都会被找出,不仅限于 :root,包括嵌套规则和媒体查询中的声明。每一次出现都会记录它所属的选择器。
重复检测是如何工作的?
如果同一个变量名被声明了多次且值不同(这通常是复制粘贴或 token 不一致的信号),就会被标记出来。在多个作用域中用相同的名字声明相同的值(比如浅色/深色主题覆盖)是正常情况,不会被标记。
我的 CSS 会被发送到别的地方吗?
不会,解析完全在你的浏览器中通过一个小型 JavaScript 扫描器完成。你粘贴的内容不会被上传。