可访问性测试与治理:练习答案
DOM 层检查 role="dialog"、名称和 aria-modal;键盘层检查打开后焦点进入、Tab 不逃逸、Escape 关闭并恢复焦点;真实浏览器层检查滚动锁、缩放和屏幕阅读器顺序。
静态扫描通过不能替代后两层,因为它看不到焦点时序和用户完成任务的路径。
答案给出可直接复现的输入步骤、预期输出与边界说明;完成后请按步骤在目标浏览器复跑,并记录浏览器版本与实际结果。
语义、可访问名称与结构
答案必须保留本节输入、操作和可观察结果。先运行成功路径,再运行一个反例;
text
输入:第一次执行 → 改变一个条件 → 取消或卸载
预期:状态转移与正文规则一致;取消后没有迟到写入;失败保留可诊断原因若结果不同,优先检查资源所有权、执行时机和宿主前提,而不是只改最终 UI。
可访问性测试与治理
答案必须保留本节输入、操作和可观察结果。先运行成功路径,再运行一个反例;
text
输入:第一次执行 → 改变一个条件 → 取消或卸载
预期:状态转移与正文规则一致;取消后没有迟到写入;失败保留可诊断原因若结果不同,优先检查资源所有权、执行时机和宿主前提,而不是只改最终 UI。
键盘、焦点与交互状态
答案必须保留本节输入、操作和可观察结果。先运行成功路径,再运行一个反例;
text
输入:第一次执行 → 改变一个条件 → 取消或卸载
预期:状态转移与正文规则一致;取消后没有迟到写入;失败保留可诊断原因若结果不同,优先检查资源所有权、执行时机和宿主前提,而不是只改最终 UI。
表单错误、状态反馈与动态内容
答案必须保留本节输入、操作和可观察结果。先运行成功路径,再运行一个反例;
text
输入:第一次执行 → 改变一个条件 → 取消或卸载
预期:状态转移与正文规则一致;取消后没有迟到写入;失败保留可诊断原因若结果不同,优先检查资源所有权、执行时机和宿主前提,而不是只改最终 UI。
自动规则与误报边界
先验证输入序列,再检查失败、取消/卸载和降级;答案必须记录实际输出与未覆盖的宿主差异。
键盘与读屏任务
先验证输入序列,再检查失败、取消/卸载和降级;答案必须记录实际输出与未覆盖的宿主差异。
组件门禁与例外记录
先验证输入序列,再检查失败、取消/卸载和降级;答案必须记录实际输出与未覆盖的宿主差异。