用途:定义构建无障碍自定义组件所需的 W3C WAI-ARIA 1.2 接口与 WAI 编写实践指南(APG)模式集,适用于 HTML 无原生等价物的 UI 组件(标签页、自定义渲染组合框、富选项列表、菜单/菜单栏、树、树网格、轮播等)。
主要能力:给出 ARIA 使用决策树(原生元素优先、原生元素组合次之、无匹配才叠加最小 ARIA);提供 APG 模式选择表及每种模式的角色、状态与键盘模型索引;说明可访问名称计算优先级(aria-labelledby > aria-label > 原生标签 > 内容文本 > title);覆盖实时区域(aria-live、aria-atomic、aria-relevant、aria-busy、role=status、role=alert)用法;提供组合框弹窗类型与焦点模式、标签页自动/手动激活的判断;附反模式索引与 WCAG 参考交叉引用。
使用方式:按第一 ARIA 规则判断——若存在单一原生元素能满足需求,直接使用原生元素,不加 role 与多余 aria-*;若原生元素组合可满足,使用组合并仅用最小 ARIA 承载名称;仅当无原生原语匹配时,按对应 APG 模式在最近的元素上叠加最小角色与状态。表单错误需同时设置 aria-errormessage 与 aria-invalid="true"。实时区域元素须在内容插入前已存在于 DOM。
适用场景:需要自定义交互组件的无障碍实现,如标签页、组合框、列表框、菜单、单选组、树、树网格、轮播、披露、模态对话框等。
限制:方法细节、完整键盘模型与状态矩阵位于 methods.md;反模式详情位于 anti-patterns.md;示例为 HTML 片段。ARIA 不添加键盘、焦点、type=submit 等默认行为,原生元素提供这些行为。文档未提供具体安装命令、收费或价格信息,暂未提供。