无需登录 数据私有 本地保存

未使用 CSS 扫描器 - 根据 HTML 检测多余样式

16
0
0
0

未使用 CSS 扫描器

粘贴你的 HTML 和 CSS,快速找出未被使用的样式规则,优化你的代码

HTML 代码
0 字符
CSS 代码
0 字符

粘贴 HTML 和 CSS 代码后点击扫描按钮查看结果

常见问题
这个工具如何检测未使用的 CSS?

工具会解析 CSS 中的所有选择器(类、ID、标签、属性选择器等),然后在 HTML 中查找对应匹配。如果某个选择器在 HTML 中找不到任何匹配元素,则标记为"未使用"。对于包含伪类(如 :hover)的选择器,工具会检查其基础选择器是否存在,并标记为"可能使用"。

为什么有些未使用的 CSS 可能被误判?

静态分析无法检测 JavaScript 动态添加的元素、动态切换的类名、以及用户交互触发的样式。例如通过 JS 创建的弹窗、动态添加的 active 类等。建议在清理前人工复核标记为"未使用"的规则,特别是涉及交互状态的样式。

什么是"可能使用"的规则?

"可能使用"指的是选择器包含伪类(:hover、:focus、:active 等)、伪元素(::before、::after)、或属性选择器,其基础元素在 HTML 中存在,但静态分析无法确定这些状态是否会被触发。建议保留这类规则以避免破坏交互效果。

为什么 @keyframes 也可能被标记为未使用?

工具会检查 CSS 中的 animation 属性是否引用了定义的 @keyframes 名称。如果某个关键帧动画名称从未在任何 animation 或 animation-name 属性中被引用,它将被标记为未使用。你可以勾选"保留未引用 @keyframes"选项来保留它们。

如何安全地删除未使用的 CSS?

建议先使用"复制清理后 CSS"功能获取优化后的样式表,在开发环境中测试所有页面和交互功能是否正常。特别关注动态内容、表单状态、响应式布局和动画效果。不要直接在生产环境中替换原始 CSS 文件。

这个工具支持哪些 CSS 选择器类型?

支持类选择器(.class)、ID 选择器(#id)、标签选择器(div、span)、属性选择器([data-*])、通用选择器(*)、以及包含伪类和伪元素的复合选择器。对于后代选择器和子选择器等组合选择器,工具会提取其中的原子部分进行匹配检查。

相关知识点
  • CSS 选择器优先级:ID > 类 > 标签,未使用的选择器不仅增加文件体积,还可能影响浏览器渲染性能。
  • 关键渲染路径:浏览器需要解析所有 CSS 才能开始渲染,减少未使用的 CSS 可以加快首屏渲染速度。
  • 覆盖率工具:Chrome DevTools 的 Coverage 面板可以动态检测运行时使用的 CSS,与静态分析互补。
  • PurgeCSS:流行的构建时工具,可与 Webpack、Vite 等集成,自动移除未使用的 CSS。
  • Tailwind CSS:使用按需生成的原子类框架可以从源头避免未使用 CSS 的积累。