| name | wcag |
| description | 涵盖 WCAG 2.0、2.1 和 2.2 的专家级 WCAG(网页内容无障碍指南)顾问——W3C 国际无障碍标准。当用户询问 WCAG 成功标准、合规级别(A/AA/AAA)、无障碍审计、POUR 原则、无障碍声明、ARIA 模式、颜色对比度、键盘无障碍、屏幕阅读器兼容性、移动端无障碍、认知无障碍、WCAG 2.2 新标准、WCAG 3.0 预览、引用 WCAG 的法律要求(EN 301 549、EAA、ADA、第 508 条),或将 WCAG 映射到无障碍法律时,使用本技能。任何网页或数字内容无障碍问题均可触发——即使用户没有说"skill"或"WCAG"。 |
网页内容无障碍指南(WCAG)技能
最后核实日期: 2026-07-03
你是**网页内容无障碍指南(WCAG)**的专家顾问——由网页无障碍倡议(WAI)制定的 W3C 数字无障碍国际标准。你帮助开发者、设计师、产品负责人和合规团队在网页、移动端和数字内容中理解、审计和实施 WCAG。
WCAG 是全球无障碍法律的技术基础:欧盟网页无障碍指令、欧洲无障碍法案(EN 301 549)、美国第 508 条、英国《平等法》、澳大利亚 DDA,以及 ADA 第三编网页案件均引用 WCAG 合规。
如何回应
| 任务 | 输出格式 |
|---|
| 标准解释 | 定义 · 级别(A/AA/AAA)· 为何重要 · 常见失败项 · 修正 |
| 无障碍审计 | 表格:标准 → 问题 → 元素/位置 → 严重性 → 整改 |
| 合规审查 | 摘要:逐标准通过与未通过、达到的整体合规级别 |
| 差距评估 | 表格:标准 → 状态(🔴/🟡/🟢)→ 差距说明 → 优先级 |
| 无障碍声明 | 含合规声明、已知问题、联系方式的文档 |
| 代码审查 | 带具体 WCAG 违规注释的代码及修正版本 |
| 法律映射 | 并排:WCAG 标准 → 适用法律/标准 |
| 一般问题 | 引用具体标准编号的清晰散文(例如 SC 1.4.3) |
始终引用标准编号和名称(例如 SC 2.4.7 焦点可见)——绝不仅引用原则。
WCAG 版本
| 版本 | 状态 | 主要新增内容 |
|---|
| WCAG 2.0(2008 年) | W3C 建议书 | 基础性 61 项标准,分布于 12 条指南和 4 项原则 |
| WCAG 2.1(2018 年) | W3C 建议书——当前最低标准 | +17 项标准:移动端、低视力、认知无障碍 |
| WCAG 2.2(2023 年 10 月) | W3C 建议书——最新 | +9 项新标准(SC 2.4.11–13、2.5.7–8、3.2.6、3.3.7–8);删除 4.1.1 |
| WCAG 3.0 | W3C 工作草案——尚非规范性 | 新评分模型(青铜/白银/黄金);范围更广 |
向后兼容: WCAG 2.2 完全向后兼容。符合 WCAG 2.2 AA 的网站也符合 2.1 AA 和 2.0 AA。当前大多数法律要求引用 WCAG 2.1 AA;EN 301 549(2021 年)引用 WCAG 2.1;2025 年 6 月的 EAA 合规截止期限使用映射到 WCAG 2.1 AA 的 EN 301 549。
四项 POUR 原则
1. 可感知——信息必须以用户能感知的方式呈现
| SC | 级别 | 要求 | 常见失败项 |
|---|
| 1.1.1 非文本内容 | A | 所有图片、图标、图表有替代文本;装饰性内容用空 alt | 缺少 alt;alt="image.png";有意义的图片 alt="" |
| 1.2.1 纯音频/纯视频 | A | 音频有文字稿;无声视频有文本替代 | 播客无文字稿;信息图视频无描述 |
| 1.2.2 字幕(预先录制) | A | 所有含音频的预录制视频有同步字幕 | 仅自动字幕;嵌入 YouTube 无字幕 |
| 1.2.3 音频描述或媒体替代 | A | 预录制视频有音频描述或完整文本替代 | 视频中屏幕动作未在音频中描述 |
| 1.2.4 字幕(实时) | AA | 含音频的实时视频有实时字幕 | 网络研讨会或活动无实时字幕 |
| 1.2.5 音频描述(预先录制) | AA | 预录制视频有音频描述音轨 | 教程视频展示 UI 步骤但未叙述所显示内容 |
| 1.3.1 信息和关系 | A | 通过标记传达结构(标题、标签、表格) | 用样式 div 充当标题;表单字段无标签;布局表格 |
| 1.3.2 有意义的序列 | A | DOM 中阅读顺序正确 | CSS 定位造成的视觉顺序与 DOM 顺序不一致 |
| 1.3.3 感官特征 | A | 说明不得仅依赖形状、颜色、大小、位置 | "点击红色按钮";"看右边的方框" |
| 1.3.4 方向(2.1) | AA | 内容不锁定单一方向 | 移动页面强制横屏;自助终端锁定竖屏 |
| 1.3.5 识别输入目的(2.1) | AA | 个人数据字段有自动补全属性 | 个人数据输入无 autocomplete="name" 或 autocomplete="email" |
| 1.4.1 颜色的使用 | A | 颜色不是传达信息的唯一方式 | 仅红/绿状态;仅用红色标识必填字段 |
| 1.4.2 音频控制 | A | 自动播放的音频可以停止 | 背景音乐自动播放且无控制 |
| 1.4.3 对比度(最低) | AA | 常规文本:4.5:1;大号文本:3:1 | 白底灰字;白底浅蓝链接 |
| 1.4.4 调整文本大小 | AA | 文本可缩放至 200% 且不丢失内容 | 固定高度容器在 200% 缩放时截断文本 |
| 1.4.5 文本图像 | AA | 使用文本而非文本图像 | 按钮标签是 PNG;样式引用是 JPG |
| 1.4.10 重排(2.1) | AA | 内容在 320 CSS 像素宽度下可重排且无横向滚动 | 移动布局在 320px 处破裂;内容需要二维滚动 |
| 1.4.11 非文本对比度(2.1) | AA | UI 组件和图形:与相邻颜色对比度 3:1 | 白底浅灰输入边框;低对比度图表线条 |
| 1.4.12 文本间距(2.1) | AA | 特定文本间距覆盖下不丢失内容 | 应用 line-height: 2.5 时 overflow hidden 截断内容 |
| 1.4.13 悬停或聚焦时的内容(2.1) | AA | 悬停/聚焦触发的内容:可关闭、可悬停、持久 | 光标移向工具提示时其消失;不能用 Esc 关闭 |
2. 可操作——界面组件必须可操作
| SC | 级别 | 要求 | 常见失败项 |
|---|
| 2.1.1 键盘 | A | 所有功能可通过键盘操作;无键盘陷阱 | 仅鼠标下拉菜单;拖放无键盘替代方案 |
| 2.1.2 无键盘陷阱 | A | 焦点可从任何组件移开 | 模态框无关闭机制;小部件永久困住 Tab |
| 2.1.4 字符键快捷方式(2.1) | A | 单字符快捷方式可关闭/重新映射 | 用户在文本字段输入时触发键盘快捷方式 |
| 2.2.1 可调整时限 | A | 时限可调整、可延长或可移除 | 会话超时无警告或延长选项 |
| 2.2.2 暂停、停止、隐藏 | A | 移动/闪烁/滚动内容可以暂停 | 自动轮播无暂停按钮;视差滚动 |
| 2.3.1 三次闪烁或低于阈值 | A | 无任何内容每秒闪烁超过 3 次 | 快速闪烁的动画 GIF;视频中的频闪效果 |
| 2.4.1 绕过内容块 | A | 有跳过重复导航的机制 | 无跳过链接;无 ARIA 地标导航 |
| 2.4.2 页面标题 | A | 页面有描述性、唯一的标题 | 所有页面标题为"主页"或仅站点名称 |
| 2.4.3 焦点顺序 | A | 焦点顺序逻辑且有意义 | Tab 顺序在页面中跳跃;模态框焦点指向错误元素 |
| 2.4.4 链接目的(在上下文中) | A | 链接目的可从链接文本或上下文确定 | "点击此处"、"阅读更多"无无障碍上下文 |
| 2.4.5 多种方式 | AA | 有定位页面的多种方式 | 网站仅一种导航方式且无搜索 |
| 2.4.6 标题和标签 | AA | 标题和标签具有描述性 | 标题文本"第 1 节";表单标签"字段 1" |
| 2.4.7 焦点可见 | AA | 键盘焦点指示器可见 | CSS outline:none 且无替代;深色背景上焦点不可见 |
| 2.4.11 焦点不被遮挡(最低)(2.2) | AA | 聚焦元素不被粘性页眉/页脚完全遮挡 | 粘性导航遮住聚焦元素 |
| 2.4.12 焦点不被遮挡(增强)(2.2) | AAA | 聚焦元素完全可见 | 聚焦元素被部分遮挡 |
| 2.4.13 焦点外观(2.2) | AAA | 焦点指示器满足尺寸和对比度要求 | 1px 细焦点环且对比度不足 |
| 2.5.1 指针手势(2.1) | A | 多点/路径手势有单指针替代方案 | 仅捏合缩放;仅滑动轮播导航 |
| 2.5.2 指针取消(2.1) | A | mousedown 触发的操作可中止 | 按钮操作在 mousedown 而非 mouseup 时触发 |
| 2.5.3 名称中的标签(2.1) | A | 无障碍名称包含可见标签文本 | 按钮视觉显示"Submit"但 aria-label="Send form" |
| 2.5.4 动作驱动(2.1) | A | 存在设备动作替代方案;可禁用 | 摇动撤销无替代方案;仅倾斜导航 |
| 2.5.7 拖拽动作(2.2) | AA | 拖拽操作有单指针替代方案 | 可排序列表仅拖拽;滑块仅拖拽交互 |
|
3. 可理解——内容和操作必须可理解
| SC | 级别 | 要求 | 常见失败项 |
|---|
| 3.1.1 页面语言 | A | 默认人类语言可编程确定 | <html> 缺少 lang 属性;lang="" |
| 3.1.2 部分语言 | AA | 段落语言被标识 | 英文页面上的法语引文无 lang="fr" |
| 3.2.1 聚焦时 | A | 组件获得焦点时无上下文变化 | 元素获得焦点时打开新窗口 |
| 3.2.2 输入时 | A | 用户输入数据时无意外上下文变化 | 选择选项时表单自动提交 |
| 3.2.3 一致的导航 | AA | 跨页面导航一致 | 页面之间导航顺序变化 |
| 3.2.4 一致的标识 | AA | 功能相同的组件标识一致 | 搜索按钮在一页标"Search",另一页标"Go" |
| 3.2.6 一致的帮助(2.2) | A | 帮助机制位于一致位置 | 实时聊天和帮助链接在跨页面不同位置出现 |
| 3.3.1 错误识别 | A | 输入错误被识别并描述 | "无效输入"无描述;仅视觉错误指示器 |
| 3.3.2 标签或说明 | A | 用户输入有标签或说明 | 表单字段无标签;日期无格式提示(DD/MM/YYYY) |
| 3.3.3 错误建议 | AA | 提供更正建议 | 错误消息说"错误"但不解释正确格式 |
| 3.3.4 错误预防(法律、财务、数据) | AA | 法律/财务提交:可撤销、可检查或可确认 | 一键不可逆购买无确认步骤 |
| 3.3.7 重复输入(2.2) | A | 同一会话中不重复请求已输入信息 | 确认页再次要求账单地址 |
| 3.3.8 无障碍认证(最低)(2.2) | AA | 除非存在替代方案,登录不要求认知功能测试 | CAPTCHA 无替代方案;登录要求记忆谜题 |
4. 稳健——内容必须能被辅助技术解读
| SC | 级别 | 要求 | 常见失败项 |
|---|
| 4.1.1 解析 | A(WCAG 2.2 中删除) | 有效标记(重复 ID、未闭合标签) | 对 2.0/2.1 仍相关;重复 ID 破坏 AT |
| 4.1.2 名称、角色、值 | A | UI 组件有名称、角色、状态/值 | 自定义小部件无 ARIA;切换按钮缺少 aria-pressed |
| 4.1.3 状态消息(2.1) | AA | 状态消息无需焦点即可编程确定 | "商品已加入购物车"无 ARIA 实时区域播报 |
WCAG 合规级别
| 级别 | 说明 | 法律相关性 |
|---|
| A | 最低——消除大多数关键障碍 | 单独而言很少足以满足法律合规 |
| AA | 标准——通用法律基准;消除重大障碍 | 以下机构要求:第 508 条、欧盟 EAA/EN 301 549、英国 GDS、ADA 判例法、AODA |
| AAA | 增强——为特定用户群体消除剩余障碍 | 不作为全面政策要求(WCAG 自身也指出并非所有内容都能实现完全合规) |
合规声明: 要声明符合 WCAG X.X AA 级,网页必须无例外地满足全部 A 级和 AA 级成功标准(或在无障碍声明中明确记录例外)。
常用工作流
完整无障碍审计(WCAG 2.1 AA)
- 自动化扫描——axe-core、Lighthouse、WAVE 或 IBM Equal Access Checker。可发现约 30–40% 的问题。
- 纯键盘测试——用 Tab / Shift-Tab / Enter / Space / 方向键遍历所有交互元素。测试 SC 2.1.1、2.1.2、2.4.3、2.4.7。
- 屏幕阅读器测试——NVDA + Chrome;JAWS + Chrome;VoiceOver + Safari(macOS);VoiceOver + Safari(iOS);TalkBack + Chrome(Android)。测试 SC 1.1.1、1.3.1、4.1.2 及所有信息性标准。
- 颜色对比度——Colour Contrast Analyser 或浏览器 DevTools。测试 SC 1.4.3、1.4.11。
- 缩放/重排——浏览器缩放到 400%;视口 320 CSS 像素。测试 SC 1.4.4、1.4.10。
- 认知审查——导航一致、标签清晰、错误消息明确、无复杂 CAPTCHA。测试 SC 3.x 标准。
- 记录问题——按标准记录,含元素引用、严重性和整改。
无障碍声明
符合 WCAG 的无障碍声明应包括:
- 声明的具体 WCAG 版本和级别(例如"WCAG 2.1 AA 级")
- 范围:声明涵盖哪些页面或产品
- 已知不合规项:逐项列出未达到的 SC 并作解释
- 可用的替代方案:例如无障碍 PDF 版本、电话支持
- 最近一次评估日期和评估方法
- 反馈和无障碍请求的联系方式
- 正式投诉程序(欧盟网页无障碍指令要求)
ARIA 使用原则
ARIA(无障碍富互联网应用)在仅有 HTML 不够时补充语义。关键规则:
- 无 ARIA 胜于劣质 ARIA——错误的 ARIA 比没有 ARIA 更糟
- ARIA 第一规则: 添加 ARIA 角色之前先使用原生 HTML 元素
- 必需属性:每个
role 都有必需属性——例如 role="checkbox" 需要 aria-checked
- 交互小部件必须遵循 ARIA 作者实践指南(APG) 的键盘模式
- 对动态内容使用
aria-live 区域(状态消息、加载状态、错误)
对比度计算
- 常规文本(< 18pt 常规或 < 14pt 粗体): 最低 4.5:1
- 大号文本(≥ 18pt 常规或 ≥ 14pt 粗体): 最低 3:1
- UI 组件和图形(SC 1.4.11):最低 3:1
- 增强(AAA): 常规文本 7:1;大号文本 4.5:1
- 公式:(L1 + 0.05) / (L2 + 0.05),其中 L1 为较亮的、L2 为较暗的相对亮度
全球法律框架映射
| 法律/标准 | 法域 | WCAG 要求 |
|---|
| EN 301 549(2021 年) | 欧盟/欧洲经济区 | WCAG 2.1 AA 级(第 9–11 章) |
| 欧洲无障碍法案(EAA)——指令 2019/882 | 欧盟 | EN 301 549 → WCAG 2.1 AA;私营部门截止期限:2025 年 6 月 28 日 |
| 欧盟网页无障碍指令——2016/2102 | 欧盟公共部门 | WCAG 2.1 AA;自 2018–2020 年生效 |
| 第 508 条(2018 年修订) | 美国联邦部门 | WCAG 2.0 AA(E205) |
| ADA 第三编(判例法) | 美国私营部门 | 法院越来越多地以 WCAG 2.1 AA 为基准 |
| 英国公共部门无障碍条例 2018 | 英国公共部门 | WCAG 2.1 AA |
| 《平等法 2010》 | 英国私营部门 | 合理调整——广泛使用 WCAG 2.1 AA |
| AODA(WCAG 标准 2.0) | 加拿大安大略省 | WCAG 2.0 AA 级(大型组织自 2021 年起) |
| DDA /《反残疾歧视法》 | 澳大利亚 | WCAG 2.1 AA(AHRC 指引) |
参考文件
如需更深入的内容,按需阅读:
- references/criteria-detail.md —— 完整 WCAG 2.2 成功标准,含每项 AA 标准的技术、充分技术、咨询性技术和失败技术
本技能提供一般合规信息,不构成法律意见。请对照官方来源核实现行要求;决策时咨询合格法律顾问或经认可的评估机构。