Skip to content

可用性与无障碍

可用性回答「真实用户用不用得顺」,无障碍回答「所有人(含视障、键盘、老年与临时受限用户)能不能用」。两者共用一条底线:好的体验不能挑用户。测试与量化方法见本页;前端实现与自动化测试见前端技术下的测试样式方案

可用性测试:5 个用户胜过 50 次猜

最小可用的流程

定目标 → 写任务脚本 → 招募 3~5 名目标用户 → 主持观察(出声思维)
→ 记录(完成率/用时/卡点)→ 排序问题 → 修复 → 回归
  • 测试对象是任务不是界面:给「把成员邀请进项目并设为管理员」这样的真实任务,而不是「你觉得这个按钮好看吗」;
  • 让用户出声思考(Think Aloud):边做边说,问题往往出现在沉默处;
  • 别引导:用户卡住时先记 10 秒,不要立刻提示「点这里」;
  • 3~5 名即可发现大部分问题:不必追求大样本,迭代式多跑几轮更有效。

结果怎么记

任务完成率平均用时卡点(用户原话/行为)严重度
邀请成员4/53:20找不到「设置-成员」入口

修复顺序:严重度 = 影响用户数 × 频率 × 业务损失,先修高频高损项。

无障碍基线:WCAG 2.1 AA 够用清单

WCAG 四原则 POUR:可感知(Perceivable)、可操作(Operable)、可理解(Understandable)、健壮(Robust)。落地到设计侧最常检查的硬项:

1. 对比度(可感知)

对象最低对比度说明
正文、图标、输入框文字4.5:1含占位符、禁用但信息关键的灰色文字
大字号(≥18pt 或加粗 ≥14pt)3:1
边框、分隔线等装饰元素3:1(可选)但承载信息的边框要够

色值上标「设计就查」,工具:WebAIM Contrast Checker / Stark / 浏览器 DevTools 检查器。

2. 键盘可操作(可操作)

  • 所有功能键盘可达:Tab 能走到每个可交互元素,Enter/Space 能触发;
  • 可见焦点环focus-visible 状态必须有,不要 outline: none 一刀切;
  • 焦点顺序合理:与视觉阅读顺序一致,弹窗打开后焦点移入、关闭后归位(焦点管理是弹窗组件的硬需求)。

3. 语义与文案(可理解 / 健壮)

  • 表单要有 label(不只 placeholder),错误提示与输入框用 aria-describedby 关联;
  • 按钮是「保存」不是「图标 + 全靠 hover title」:无文本图标按钮必须配 aria-label
  • 图片有 alt(信息图写内容摘要,纯装饰图 alt 留空);
  • 颜色不单独承载信息,错误=颜色+图标+文字三通道。

4. 动效与时间

  • 动效跟随 prefers-reduced-motion 关闭或减弱;
  • 自动播放(轮播、闪烁、自动刷新)需可控:可暂停、可关闭、时长有限;
  • 会话超时前给充足提示并可续期。

可访问性审计:自动化 + 手工

自动化(每天、每次构建跑)

  • axe-core / Lighthouse / @axe-core/cli:扫语义、对比度、label 等可机检项;
  • 接入前端测试流水线,作为 CI 门槛,防止回归。

手工清单(发布前过一遍)

  • [ ] 只用键盘走完一遍核心流程(无鼠标)
  • [ ] 放大到 200% 页面不错乱、不丢内容
  • [ ] 走查对比度:灰字、禁用态、占位符全部 ≥ 4.5:1
  • [ ] 焦点环清晰,弹窗焦点能进能出
  • [ ] 每个表单控件有 label,错误提示关联到对应输入
  • [ ] 纯图标按钮有可读的 aria-label
  • [ ] 颜色盲视模拟下(工具灰度/色盲滤镜)信息仍可辨
  • [ ] 动效在 prefers-reduced-motion 下被关闭

常见坑速查

现象解法
灰字不可读辅助信息用 #ccc 直接看不清灰底白字再低饱和,也要守住 4.5:1
placeholder 当 label聚焦后提示消失、无标签可读显式 label + aria 关联
删除焦点环键盘用户找不到光标在哪保留 focus-visible,用颜色+圆环双表达
只用颜色标错误红字但无图标无文字三通道表达:颜色+图标+文案
测试只请「自己人」全是熟悉产品的内部人测不出真问题招募真实/目标用户,给真实任务
无障碍只上线前查发版前一天才扫出 40 个问题自动化进 CI,组件库验收含 a11y 项

检查清单

  • [ ] 核心流程已用真实用户做过 1 轮出声思维测试并记录严重度
  • [ ] 自动化审计接入 CI,回归即报错
  • [ ] 手工清单 8 项全部通过(见上文)
  • [ ] 新组件入库验收含对比度 / 键盘 / 焦点环 / aria 四项
  • [ ] 设计令牌里已备一套 AA 达标的语义色

视觉与令牌见设计基础与视觉UI 界面与设计系统;前端语义化与 ARIA 实现见前端样式方案;自动化测试工程见前端测试

基于 VitePress 构建 · 内容以知识共享方式沉淀