无障碍设计规范
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/accessibility-lr-sh8u。
技能介绍
要解决的问题
在 Web 项目中,尤其是 AI 驱动的开发场景下,人工测试往往受到限制,无障碍问题容易在后期才暴露出来。事后补齐无障碍的代价远高于从一开始就纳入考量,这也是本技能强调 accessibility-first approach 的原因。当面对已有代码库时,直接推翻重写并不现实,需要谨慎提出重构建议,同时理解并记录用户意图与应用约束。
核心能力与关键步骤
- 无障碍优先的开发流程:在任意开发任务中都采用无障碍优先的方式,并持续记录相关需求;确保不仅理解本技能所述的标准,还能正确实施更高层面的无障碍规范。
- 注释与 WCAG 2.2 对齐:在为无障碍而做的实现处大量添加代码注释,引用 WCAG 2.2 中相应级别的要求,必要时说明预期的用户流程。
- 语义化 HTML 与结构:所有内容和控件都从语义化 HTML 入手——按钮使用真实元素,表单使用对应的原生控件,标题层级保持逻辑一致。原生元素自带键盘支持,而非语义元素则缺乏这些能力。
- ARIA 的使用边界:只有在没有其他选择时才使用 ARIA,并且大多数情况下其实都存在替代方案。一旦使用,需要在代码中记录这一选择。
适用边界与注意点
本技能不是一套完整的无障碍规范清单,而是一份开发流程上的约束。它假设开发者愿意在编码阶段就落实语义化结构和注释要求,而不是依赖后续的测试环节。对于完全无法改造的既有系统,技能只要求提出谨慎的重构建议,而非强制重写。此外,WCAG 2.2 的引用需要结合具体场景判断适用级别,不能机械套用。
使用场景
- 启动新的Web项目时,需要在编码初期就落实语义化HTML和键盘交互,避免后期补无障碍成本过高
- AI辅助开发环境中人工测试有限,需要通过代码注释详细说明为无障碍所做的实现和预期用户流程
- 维护缺乏无障碍支持的遗留代码库,需要在不重写的前提下提出谨慎的重构建议并记录用户意图
- 开发自定义组件时,需要判断是否可以避免使用ARIA,如必须使用则记录选择依据和键盘交互模型
适合人员
- 需要在AI驱动开发流程中保证代码无障碍质量的Web工程师
- 希望在项目初期就建立语义化结构和无障碍基线的前端团队
- 维护缺少无障碍文档的遗留系统、需要逐步改进的开发者
- 需要在代码中对齐WCAG 2.2要求并解释实现决策的技术负责人