nielsdeblaauw/twigcs-a11y

TwigCS的可访问性规则

0.3.0 2022-02-18 13:06 UTC

This package is auto-updated.

Last update: 2024-09-18 18:42:32 UTC


README

这是一个TwigCS可访问性规则集。它静态检查twig模板中的已知可访问性问题。

此规则集灵感来源于Deque的Axe Linter

注意: 自动化测试不能保证您的网站是可访问的。手动测试是确保网站可访问的唯一方式。

想了解更多关于创建可访问性网站的知识?请查看A11Y Collective

安装

composer require --dev nielsdeblaauw/twigcs-a11y

使用

vendor/bin/twigcs --ruleset \\NdB\\TwigCSA11Y\\Ruleset

示例输出

./tests/test.twig
l.2 c.0 : ERROR [A11Y.TabIndex] Invalid 'tabindex'. Tabindex must be 0 or -1. Found `tabindex=1>.`
l.12 c.20 : ERROR [A11Y.TabIndex] Invalid 'tabindex'. Tabindex must be 0 or -1. Found `tabindex=test.`
l.12 c.53 : ERROR [A11Y.TabIndex] Invalid 'tabindex'. Tabindex must be 0 or -1. Found `tabindex='test'.`
l.16 c.0 : ERROR [A11Y.BannedHTMLTags] Tag 'marquee' is dissallowed. Found `<marquee>`.
l.18 c.0 : ERROR [A11Y.BannedHTMLTags] Tag 'blink' is dissallowed. Found `<blink>`.
5 violation(s) found

有关其他选项,请参阅TwigCS文档

规则

以下规则作为此规则集的一部分实现。

TabIndex

Axe Tabindex规则描述。

使用非0-1的tabindex值会导致键盘用户遇到意外的行为。元素tabindex属性中的变量被视为无效。

BannedHTMLTags

Axe Blink规则描述。

Axe Marquee规则描述。

禁止使用blinkmarquee标签。这些元素可能给认知障碍用户带来问题。

AriaRoles

Axe aria-roles规则描述。

捕获无效的Aria角色值。拼写错误、非标准角色和动态角色不允许。

无效的角色不能被辅助技术正确解释。

路线图

目标是实现Axe Linter规则集中的尽可能多的规则。