作为网页无障碍扩展系列的第四弹,我们发布了 Google Chrome 扩展程序“Area Flash Checker(Area Flash Checker)”。
第一弹“Area Contrast Checker”中诞生的“区域分析”方法,即通过拖拽选取范围、按所见即所得的方式进行分析,本次被扩展到了“动态内容”领域。
基于 WCAG 成功准则 2.3.1 / 2.3.2,可以在页面上动态内容运动的当下,直接检测其中的闪烁。
开发背景:容易被忽略且难以确认的“闪烁”
强烈的明暗闪烁和红色闪烁可能引发光敏性癫痫发作。
在日本,1997年电视动画播出后,大量观众出现身体不适的事例广为人知。
WCAG 将闪烁相关的成功准则定为 A 级,即最基础的要求。
网站中产生足以违反该准则的闪烁的情况并不多见,但一旦发生,就会直接影响用户的健康。
此外,闪烁不仅限于视频,还可能出现在 CSS 动画、Canvas 特效以及广告位等场景中。
过去检测闪烁时,通常使用以 PEAT 为代表的视频文件分析类工具。
这类工具主要用于在内容制作阶段检查视频素材。
若要验证网站集成后的实际状态,则需要录制页面画面、转换视频文件并导入工具,每次修改都必须重复这一流程。
“发现可疑的动态时,想立刻在现场确认。”
正是基于这种一线的需求,本工具的开发由此启动。
无需录屏,即可测量页面上“正在运动中”的内容
只需通过拖拽选择想要检测的范围(或将整个视图作为对象),并捕获 5 至 60 秒即可。
由于直接解析渲染帧,可以统计用户实际看到的一般闪烁与红色闪烁。
CSS 动画、视频、Canvas、GIF、轮播以及广告位等,均可按同样的步骤进行检测。
注:如需审核已完成的视频文件本身,更适合使用视频文件解析类工具。
本工具定位为在制作和诊断过程中快速确认的一种选择。
主要功能
1. WCAG 达标准则 2.3.1 / 2.3.2 的判定
针对「3 次闪光或阈值以下」(A 级)和「3 次闪光」(AAA 级),分别以符合 / 不符合的形式显示一般闪光和红色闪光的结果。
- 一般闪光
相对亮度先提高至 0.1 以上再降低(或反之)的一次往返变化。暗侧相对亮度低于 0.80 的情况计为 1 次。 - 红色闪光
依据 WCAG 2.1 及以后版本的定义,在饱和红色(R/(R+G+B) ≥ 0.8)与其他颜色之间的转换,且 CIE 1976 UCS 色度差超过 0.2 的情况。 - 面积阈值
WCAG 推荐的 21,824 CSS px²(341×256 px 的 25%)
结果卡片中还会显示每秒最大闪光次数、违规面积与阈值的比较,以及超出标准的时间段(峰值的 1 秒钟)。
2. 时间线与闪光图
时间线中显示亮度变化率、闪光面积和违规面积的变化趋势。将鼠标悬停或使用方向键沿时间线移动时,会在帧预览上叠加显示该时刻选定范围内的哪些区域在闪烁。
3. 在实际页面中使用时的注意事项
- 请求以60fps进行捕获,并显示实际帧率。若可能遗漏快速闪烁,则发出警告
- 自动适配 Retina / 高DPI 显示屏及浏览器缩放
- 为防止误判,默认在面积计算中排除细线和文字边缘等细小结构(可根据测量对象关闭此设置)
- 设计上确保测量过程中的叠加层不会出现在捕获画面中
4. 工具自身的无障碍性
支持屏幕阅读器,可朗读测量状态和结果。同时兼顾作为无障碍工具的易用性,例如支持通过键盘操作时间轴,并可在任何阶段按 Escape 键返回。
※ 不会进行任何数据收集或对外发送。捕获的帧在浏览器内存中解析后会立即丢弃,因此即使在尚未公开的页面或公司内部环境中也可放心使用。
在此下载 Area Flash Checker
Liberogic 致力于让无障碍不再是“特殊的应对”,而是“理所当然的品质”。
闪光很难仅通过解析 HTML 和 CSS 的自动诊断来判定,是需要人工确认的领域之一。
可先使用自动诊断工具 Lente Scan 把握整体情况,再通过扩展功能逐项核实,最终的合规判断则交由专家进行的人工诊断 Lente Audit 完成。
通过结合自动诊断、现场工具和专家人工诊断,我们支持持续的无障碍改进。
让无障碍更加贴近身边、更加顺畅。
今后我们也将持续打造融入一线声音的工具与服务。