工具

Lighthouse

Google 开源的网页质量审计工具,内置于 Chrome DevTools 并集成 PageSpeed Insights API。其无障碍审计封装了 axe-core 规则集,评分范围 0–100,但满分并不等同于符合 WCAG。

Lighthouse 是 Google 开源的自动化网页质量审计工具。它直接内置于 Chrome DevTools,运行四项审计——性能、无障碍、最佳实践和 SEO——并为每个类别生成 0 至 100 的评分。其中无障碍审计是 axe-core 规则集的子集,以 Lighthouse 的报告格式呈现。

Lighthouse 无障碍审计的实际测量范围

Lighthouse 无障碍类别运行的是 axe-core 规则的精选子集,通常包含 40 至 50 条规则,选取标准为:结果确定、执行速度快、无误报。这些规则涵盖常见领域:

  • ARIA 属性有效性。
  • 颜色对比度。
  • 表单标签存在性。
  • 图片替代文本存在性。
  • <html> 上的语言属性。
  • 标题结构(部分检查)。
  • 链接可辨识性(链接是否具有无障碍名称)。
  • 焦点指示器是否存在。

每条规则依据 Google 在 Lighthouse 文档中公布的权重系数贡献 0 至 100 的评分。关键规则(控件无无障碍名称、信息性图片缺少替代文本)权重较高;建议性规则权重较低。

核心误解

Lighthouse 无障碍评分 100 分并不意味着网站符合 WCAG。 Lighthouse 仅运行 WCAG 检查中可自动检测的子集,而该子集仅占完整 WCAG 规则集的一小部分。

具体而言,Lighthouse 评估以下内容:

  • 替代文本的质量(仅检查其是否存在)。
  • 焦点顺序是否与视觉顺序一致。
  • 交互式组件是否完整实现键盘操作规约。
  • ARIA 实时区域是否正确播报变更。
  • 真实屏幕阅读器的行为。
  • 内容可读性与认知负荷。

发布 Lighthouse 无障碍评分为 100 的网站,仅是通过了最低门槛,并未完成真正的无障碍工作。

尽管如此,未能通过该门槛是切实存在的问题。Lighthouse 无障碍评分低于 100,意味着页面上存在可自动检测的缺陷——而这些缺陷修复成本最低、阻力最小。

Lighthouse 的运营使用方式

Lighthouse 自然融入三种工作流程:

  1. DevTools 即时检查。 打开 DevTools → Lighthouse 面板 → 运行审计。适用于开发过程中对单个页面的临时检查。
  2. CI 门控。 lighthouse-ci 在每个 PR 上运行 Lighthouse,在回归时触发失败,并保存历史记录。disabilityworld.org 仓库的 CI 采用此模式:每次推送对代表性页面运行 Lighthouse,要求性能、无障碍、最佳实践和 SEO 全部达到 100 分。
  3. 真实用户监测。 PageSpeed Insights API 可按需对任意公开 URL 运行 Lighthouse;Chrome 用户体验报告(CrUX)则为相同维度提供真实用户指标。

四项全满分目标

对于采用严格 CSS、字体和图片处理的静态发布网站,Lighthouse 四项全满分是可实现的目标,值得追求。这一组合传递的信号为:

  • 性能 100 — 在慢速网络和设备上仍然快速。
  • 无障碍 100 — 通过可自动检测的底线要求。
  • 最佳实践 100 — 使用现代 HTTP、无控制台错误、图片宽高比稳定。
  • SEO 100 — 可被抓取、有元描述、语义化。

本站(disabilityworld.org)致力于在每篇发布的文章上达到这一底线,并在 CI 中验证。无障碍满分是基础成果;Lighthouse 未涵盖的人工无障碍工作,才是真正的无障碍体系所在。