用途
该技能用于审计和改进 Web 无障碍(a11y),依据 WCAG 2.2 指南和 Lighthouse 无障碍审计,目标是让内容可被所有人使用,包括残障人士。适用触发场景包括“改进无障碍”“a11y 审计”“WCAG 合规”“屏幕阅读器”等。
主要能力
- 证据驱动的审计工作流:当有可渲染页面时,运行实时 Lighthouse 无障碍审计(在使用 Chrome DevTools MCP 时调用
lighthouse_audit);公共页面使用移动导航模式,重新加载会丢失认证或用户创建状态时使用快照模式。用失败审计节点定位相关组件或模板,而不是在整个仓库搜索通用模式。检查渲染后的无障碍树快照中的名称、角色、状态、地标和标题结构(使用 Chrome DevTools MCP 时调用take_snapshot),并用键盘走查受影响流程。修复源码后重新运行同一审计和手动交互。 - 工具不可用时的替代方案:使用 Lighthouse CLI 或 axe 覆盖自动检测部分,并完成相同的手动检查。技能强调自动工具只能检测无障碍障碍的一部分,100 分不代表符合 WCAG,低分也不能替代问题级证据。
- WCAG 原则与符合性级别:围绕 POUR 四原则(可感知、可操作、可理解、健壮)展开;符合性级别为 A(最低,必须通过)、AA(标准合规,应通过,在许多司法管辖区是法律要求)、AAA(增强,可选)。
涵盖的无障碍要点
- 可感知:文本替代(图片必需 alt 文本、装饰性图片用空 alt、复杂图片用 figure/figcaption 与 aria-describedby);图标按钮需要可访问名称(aria-label 或视觉隐藏文本,含
.visually-hidden样式);颜色对比度(普通文本 AA 4.5:1、AAA 7:1;大文本 AA 3:1、AAA 4.5:1;UI 组件与图形 3:1;焦点状态也需 3:1 对比度,WCAG 1.4.11);不能仅靠颜色传达信息(需颜色 + 图标 + 文本);媒体替代方案(视频使用 track 提供 captions 与 descriptions,音频提供 transcript)。 - 可操作:键盘可访问(所有功能必须可键盘操作,优先使用原生交互元素,仅在使用非交互元素时才手动添加键盘处理,注意不要给原生 button 重复添加会双重触发);无键盘陷阱;焦点可见(不要移除焦点轮廓,使用
:focus-visible);焦点不被遮挡(2.4.11,新于 2.2,使用 scroll-margin);跳转链接(2.4.1);目标尺寸(2.5.8,新于 2.2,最小 24×24 CSS 像素,推荐 44×44);拖拽动作需有单指针替代(2.5.7,新于 2.2);计时需允许延长;动效需尊重prefers-reduced-motion。 - 可理解:页面语言(html lang,页内语言变化用 span lang);一致导航(3.2.3);一致帮助(3.2.6,新于 2.2,重复出现的帮助机制需保持相同相对顺序);表单标签(每个输入需程序化关联标签);错误处理(用 role="alert" 或 aria-live 播报,设置 aria-invalid="true",提交时聚焦第一个错误);避免重复输入(3.3.7,新于 2.2,同一会话内不重复要求已提供信息,安全再确认和已过期内容除外);无障碍认证(3.3.8,新于 2.2,登录流程不得依赖认知功能测试,除非提供复制粘贴/自动填充、替代方法或使用对象识别/个人内容的例外)。
- 健壮:ARIA 使用(优先原生元素,必要时使用正确角色和状态);实时区域(用 aria-live 播报动态内容变化而不移动焦点)。
使用方式
自动化测试:优先使用返回失败渲染节点的实时 Lighthouse 审计(Chrome DevTools MCP 的 lighthouse_audit),否则使用 npx lighthouse https://example.com --only-categories=accessibility 或 axe-core(npm install @axe-core/cli -g 后 axe https://example.com)。手动测试:键盘导航、屏幕阅读器(VoiceOver、NVDA、TalkBack)、200% 缩放、Windows 高对比模式、prefers-reduced-motion、焦点顺序、目标尺寸。
常见问题与限制
按影响分为关键(表单标签缺失、图片 alt 缺失、对比度不足、键盘陷阱、无焦点指示器)、严重(页面语言缺失、标题结构缺失、链接文本不具描述性、自动播放媒体、跳转链接缺失)、中等(图标缺 ARIA 标签、导航不一致、错误识别缺失、计时无控制、地标区域缺失)。限制:自动工具只能检测部分障碍,分数不代表 WCAG 符合性。参考 WCAG 2.2 快速参考、WAI-ARIA 创作实践、Deque axe 规则等。