mcpField
A
accessibility

accessibility

github.com/yonatangross设计与 UI299236 次安装今天更新
代码仓库

关于 accessibility

面向 Web 开发者的无障碍设计技能,涵盖 WCAG 2.2 AA、语义化 HTML、键盘焦点管理及 React Aria。规则文件按需加载,并提供检查阈值、反模式和示例。

主要功能

  1. 01WCAG 2.2 AA 实施规则
  2. 02对比度与语义 HTML 检查
  3. 03键盘导航和焦点管理
  4. 04React Aria 组件与表单模式
  5. 05用户偏好与原生 HTML 优先

适用场景

  1. 01检查网页是否符合无障碍标准
  2. 02构建键盘可操作的交互组件
  3. 03审查表单标签和颜色对比度
  4. 04支持减少动画等用户偏好

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yonatangross/orchestkit --skill accessibility

安装后在 Claude Code 中输入/accessibility确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

metadata.json
test-cases.json
examples/
wcag-examples.md
references/
ux-thresholds-quick.md
ork-delta.md
rules/
_sections.md
_template.md
aria-forms.md
aria-components.md
a11y-antipatterns-static.md
pour-exit-criteria.md
wcag-native-html-first.md
focus-keyboard-nav.md
wcag-color-contrast.md
wcag-semantic-html.md
wcag-testing.md
wcag-user-preferences.md
scripts/
accessible-form-template.tsx
accessible-component-template.tsx
focus-trap-template.tsx

详细介绍

无障碍

构建无障碍 Web 应用的全面模式:符合 WCAG 2.2 AA、键盘焦点管理、React Aria 组件模式、原生 HTML 优先理念、认知包容性,以及尊重用户偏好。每个类别都在 rules/ 中提供独立的规则文件,按需加载。

快速参考

类别规则影响使用场景
WCAG 合规性3严重颜色对比度、语义化 HTML、自动化测试
POUR 退出标准1严重为每项 WCAG 2.2 AA 标准设定可证伪的通过/失败阈值
静态反模式1高无需浏览器即可检测的可通过 grep 查找的模式
焦点管理1高键盘导航;焦点陷阱/恢复机制由上游负责
React Aria2高无障碍组件和表单钩子;覆盖层 API 由上游负责
现代 Web 无障碍2严重/高原生 HTML 优先、用户偏好;认知上限见 references/ork-delta.md

共计:6 个类别中的 10 条规则

快速入门

// Semantic HTML with ARIA
<main>
  <article>
    <header><h1>Page Title</h1></header>
    <section aria-labelledby="features-heading">
      <h2 id="features-heading">Features</h2>
    </section>
  </article>
</main>
// Focus trap with React Aria
import { FocusScope } from 'react-aria';

<FocusScope contain restoreFocus autoFocus>
  <div role="dialog" aria-modal="true">
    {children}
  </div>
</FocusScope>

WCAG 合规性

实现 WCAG 2.2 AA,让 Web 应用兼具包容性并符合法律要求。

规则文件关键模式
颜色对比度rules/wcag-color-contrast.md文本 4.5:1、UI 组件 3:1、焦点指示器
语义化 HTMLrules/wcag-semantic-html.md地标、标题、ARIA 标签、表单结构
测试rules/wcag-testing.mdaxe-core、Playwright 无障碍测试、屏幕阅读器测试

POUR 退出标准

为每项 WCAG 2.2 AA 标准设定具体的通过/失败阈值,取代含糊的“符合要求”检查。

规则文件关键模式
POUR 退出标准rules/pour-exit-criteria.md可证伪的检查清单:图像替代文本、对比度、焦点指示器、触摸目标、ARIA 状态

静态反模式

可通过静态分析或代码审查检测的反模式,无需浏览器。

规则文件关键模式
无障碍反模式(静态)rules/a11y-antipatterns-static.md移除焦点、缺少标签、自动播放、纯图标按钮、div 点击处理程序

焦点管理

面向无障碍交互式组件的键盘焦点管理模式。

规则文件关键模式
键盘导航rules/focus-keyboard-nav.md循环 tabindex、跳过链接、方向键

焦点陷阱和恢复机制由上游负责:使用 React Aria <FocusScope contain restoreFocus autoFocus>(参见上游覆盖范围(不要重复说明))。如果无法使用 React Aria,请复制 scripts/focus-trap-template.tsx;两者的内部规则均见 references/ork-delta.md。

React Aria

Adobe React Aria 钩子,用于构建符合 WCAG 的交互式 UI。

规则文件关键模式
组件rules/aria-components.mduseButton、useDialog、useMenu、FocusScope
表单rules/aria-forms.mduseComboBox、useTextField、useListBox

覆盖层钩子 API(useModalOverlay、useTooltip、usePopover)见上游文档(参见上游覆盖范围(不要重复说明));内部覆盖层方案(FocusScope 加共享动态效果预设)见 references/ork-delta.md。

现代 Web 无障碍

2026 年最佳实践:优先使用原生 HTML,兼顾认知包容性,并尊重用户偏好。

规则文件关键模式
优先使用原生 HTMLrules/wcag-native-html-first.md<dialog>、<details>,优先使用原生元素而非自定义 ARIA
用户偏好rules/wcag-user-preferences.mdprefers-reduced-motion、forced-colors、prefers-contrast、缩放

认知包容性(支持 ADHD/自闭症/阅读障碍)由上游 W3C COGA 涵盖(参见上游涵盖内容(勿重复));内部的认知负荷上限(通知数量上限、导航项数量上限、阅读水平目标)见 references/ork-delta.md。

关键决策

决策建议
一致性等级WCAG 2.2 AA(法律标准:ADA、Section 508)
对比度普通文本为 4.5:1,大号文本和 UI 组件为 3:1
目标尺寸最小 24px(WCAG 2.5.8),触控目标为 44px
焦点指示器3px 实线轮廓,对比度为 3:1
组件库使用 React Aria hooks 进行控制,使用 react-aria-components 提升开发速度
状态管理react-stately hooks(专为无障碍设计)
焦点管理模态框使用 FocusScope,小部件使用 roving tabindex
测试jest-axe(单元测试)+ Playwright axe-core(E2E)

反模式(禁止)

  • Div soup:使用 <div> 而非语义元素(<nav>、<main>、<article>)
  • 仅用颜色传达信息:状态仅通过颜色表示,没有图标/文本
  • 缺少标签:表单输入没有关联的 <label> 或 aria-label
  • 键盘陷阱:焦点无法通过 Escape 键移出
  • 移除焦点轮廓:使用 outline: none,却不提供替代指示器
  • 正值 tabindex:使用 tabindex > 0(会打乱自然顺序)
  • 带 onClick 的 Div:使用 <div onClick> 而非 <button> 或 useButton
  • 在模态框中手动管理焦点:使用 useEffect + ref.focus() 而非 FocusScope
  • 自动播放媒体:音频/视频未经用户操作便自动播放
  • 过度使用 ARIA:语义化 HTML 已足够时仍使用 ARIA

上游涵盖内容(勿重复)

在 2026-07-31 的 wrap-plus-delta 精简中,已移除供应商教程、API 参考和成功标准详解。请查阅一手资料;只有 ork 增补内容(底线、经验教训、内部决策)保留在 references/ork-delta.md 中。

主题一手资料
WCAG 2.2 成功标准详解和审计清单WCAG 2.2 快速参考 和 WCAG 2.2 规范
ARIA 小部件模式和键盘交互模型WAI-ARIA 编写实践指南
React Aria hook API(useButton、useMenu、useComboBox、useModalOverlay、useTooltip、usePopover)、组件清单、完整示例React Aria 文档
焦点陷阱、焦点还原、roving tabindex 和跳转链接算法React Aria FocusScope 和 APG 模式
认知无障碍指南(COGA)W3C 让内容更易于使用
屏幕阅读器测试详解(NVDA、JAWS、VoiceOver、TalkBack)WebAIM 屏幕阅读器测试

详细文档

资源说明
scripts/模板:无障碍表单、焦点陷阱、React Aria 组件
references/ork-delta.mdOrk 专属底线、经验教训和内部决策(认知负荷上限、覆盖层方案、规范焦点陷阱选择器)
references/ux-thresholds-quick.mdUI/UX 阈值快速参考:对比度、触控目标、认知负荷、排版、表单
examples/wcag-examples.md完整的无障碍表单、模态框和导航示例

相关技能

  • ork:testing-e2e - E2E 测试模式,包括无障碍测试
  • design-system-starter - 无障碍组件库模式
  • ork:i18n-date-patterns - RTL 布局和区域设置感知格式
  • motion-animation-patterns - 减少动态效果和动画无障碍

评论

支持 Markdown