{ "act-rules": [ { "title": "ARIA attribute is defined in WAI-ARIA", "permalink": "/standards-guidelines/act/rules/5f99a7/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "5f99a7", "name": "ARIA attribute is defined in WAI-ARIA", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `aria-` attribute specified is defined in ARIA 1.2.\n", "accessibility_requirements": { "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "ARIA state or property has valid value", "permalink": "/standards-guidelines/act/rules/6a7281/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "6a7281", "name": "ARIA state or property has valid value", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each ARIA state or property has a valid value type.\n", "accessibility_requirements": { "aria12:propcharacteristic_value": { "title": "ARIA 1.2, 6.2.4 Value (Characteristics of States and Properties)", "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Autocomplete attribute has valid value", "permalink": "/standards-guidelines/act/rules/73f2c2/", "successCriteria": [ "identify-input-purpose" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "73f2c2", "name": "Autocomplete attribute has valid value", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the HTML `autocomplete` attribute has a correct value.\n", "accessibility_requirements": { "wcag21:1.3.5": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Aron Janecki", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Button has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/97a4e1/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "97a4e1", "name": "Button has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `button` element has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Stein Erik Skotkjerra", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Element in sequential focus order has visible focus", "permalink": "/standards-guidelines/act/rules/oj04fd/", "successCriteria": [ "focus-visible" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "oj04fd", "name": "Element in sequential focus order has visible focus", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each element in sequential focus order has some visible focus indication.\n", "accessibility_requirements": { "wcag20:2.4.7": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "CSS styling", "DOM tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Element marked as decorative is not exposed", "permalink": "/standards-guidelines/act/rules/46ca7f/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "46ca7f", "name": "Element marked as decorative is not exposed", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that elements marked as decorative either are not included in the accessibility tree, or have a presentational role.\n", "accessibility_requirements": { "wcag20:1.1.1": { "secondary": "This success criterion is **less strict** than this rule. Only when this rule is applied to decorative content does a failure of 1.1.1 occur." } }, "input_aspects": [ "Accessibility tree", "CSS styling", "DOM tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "Element with aria-hidden has no content in sequential focus navigation", "permalink": "/standards-guidelines/act/rules/6cfa84/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "6cfa84", "name": "Element with aria-hidden has no content in sequential focus navigation", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that elements with an `aria-hidden` attribute do not contain elements that are part of the sequential focus navigation and focusable.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "using-aria:fourth": { "title": "Using ARIA, 2.4 Fourth Rule of ARIA Use", "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Element with lang attribute has valid language tag", "permalink": "/standards-guidelines/act/rules/de46e4/", "successCriteria": [ "language-of-parts" ], "wcagTechniques": [ "H58" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "de46e4", "name": "Element with lang attribute has valid language tag", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that a non-empty `lang` attribute of an element in the page has a language tag with a known primary language subtag.\n", "accessibility_requirements": { "wcag20:3.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H58": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS Styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Bryn Anderson", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Element with presentational children has no focusable content", "permalink": "/standards-guidelines/act/rules/307n5z/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "307n5z", "name": "Element with presentational children has no focusable content", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that elements with a role that makes its children presentational do not contain focusable elements.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Element with role attribute has required states and properties", "permalink": "/standards-guidelines/act/rules/4e8ab6/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [ "ARIA5" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "4e8ab6", "name": "Element with role attribute has required states and properties", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that elements that have an explicit role also specify all required states and properties.\n", "accessibility_requirements": { "wcag-technique:ARIA5": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "aria12:requiredState": { "title": "ARIA 1.2, 5.2.2 Required States and Properties", "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because browsers and assistive technologies will often fall back on a non-standard default value, which may be sufficient. Some of the failed examples may satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because browsers and assistive technologies will often fall back on a non-standard default value, which may be sufficient. Some of the failed examples may satisfy this success criterion." } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Tom Brunet" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Form field has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/e086e5/", "successCriteria": [ "name-role-value", "info-and-relationships", "label-in-name" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "e086e5", "name": "Form field has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each form field element has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.3.1": { "secondary": "This success criterion is **more strict** than this rule. This is because 1.3.1 Info and Relationship requires that information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text, while 4.1.2 Name, Role, Value only requires an accessible name." }, "wcag20:2.5.3": { "secondary": "This success criterion is **more strict** than this rule. This is because 2.5.3 Label in Name requires that if a label is visible, the accessible name contains the label that is presented visually, while 4.1.2 Name, Role, Value only requires an accessible name." } }, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Headers attribute specified on a cell refers to cells in the same table element", "permalink": "/standards-guidelines/act/rules/a25f45/", "successCriteria": [ "info-and-relationships" ], "wcagTechniques": [ "H43" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "a25f45", "name": "Headers attribute specified on a cell refers to cells in the same table element", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `headers` attribute on a cell refer to other cells in the same `table` element.\n", "accessibility_requirements": { "wcag20:1.3.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H43": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Audrey Maniez", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "HTML images contain no text", "permalink": "/standards-guidelines/act/rules/0va7u6/", "successCriteria": [ "images-of-text", "images-of-text-no-exception" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "0va7u6", "name": "HTML images contain no text", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that images of text are not used\n", "accessibility_requirements": { "wcag20:1.4.5": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.4.9": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Carlos Duarte", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Times Square image released into the public domain by (WT-shared) Ypsilonatshared at wts wikivoyage.", "Book shelf image by Alexandre Boue, licensed under the [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/deed.en) license.", "Ivanhoe Classic Comics released into the public domain by Malcolm Kildale under the [Creative Commons Attribution-ShareAlike 3.0 Unported](https://creativecommons.org/licenses/by-sa/3.0/deed.en) license" ] } } }, { "title": "HTML page has lang attribute", "permalink": "/standards-guidelines/act/rules/b5c3f8/", "successCriteria": [ "language-of-page" ], "wcagTechniques": [ "H57" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "b5c3f8", "name": "HTML page has lang attribute", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that an HTML page has a non-empty `lang` attribute.\n", "accessibility_requirements": { "wcag20:3.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H57": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Jey Nandakumar" ], "previous_authors": [ "Annika Nietzio" ], "funding": [ "WAI-Tools" ] } } }, { "title": "HTML page has non-empty title", "permalink": "/standards-guidelines/act/rules/2779a5/", "successCriteria": [ "page-titled" ], "wcagTechniques": [ "G88", "H25" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "2779a5", "name": "HTML page has non-empty title", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that a non-embedded HTML page has a non-empty title.\n", "accessibility_requirements": { "wcag20:2.4.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G88": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H25": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson", "Jey Nandakumar", "Stein Erik Skotkjerra", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "HTML page lang attribute has valid language tag", "permalink": "/standards-guidelines/act/rules/bf051a/", "successCriteria": [ "language-of-page" ], "wcagTechniques": [ "H57" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "bf051a", "name": "HTML page lang attribute has valid language tag", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `lang` attribute of the root element of a non-embedded HTML page has a language tag with a known primary language subtag.\n", "accessibility_requirements": { "wcag20:3.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H57": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Jey Nandakumar" ], "previous_authors": [ "Annika Nietzio" ], "funding": [ "WAI-Tools" ] } } }, { "title": "HTML page title is descriptive", "permalink": "/standards-guidelines/act/rules/c4a8a4/", "successCriteria": [ "page-titled" ], "wcagTechniques": [ "G88", "H25" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "c4a8a4", "name": "HTML page title is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the first title in an HTML web page describes the topic or purpose of that page.\n", "accessibility_requirements": { "wcag20:2.4.2": { "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "further testing needed" }, "wcag-technique:G88": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H25": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "Language" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Corbb O'Connor" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "Iframe with interactive elements is not excluded from tab-order", "permalink": "/standards-guidelines/act/rules/akn7bn/", "successCriteria": [ "keyboard", "keyboard-no-exception" ], "wcagTechniques": [ "G202" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "akn7bn", "name": "Iframe with interactive elements is not excluded from tab-order", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that `iframe` elements which contain keyboard focusable elements are not excluded from sequential focus navigation.\n", "accessibility_requirements": { "wcag20:2.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.1.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G202": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Image accessible name is descriptive", "permalink": "/standards-guidelines/act/rules/qt1vmo/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [ "G94", "G95" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "qt1vmo", "name": "Image accessible name is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the accessible names of images serve an equivalent purpose to the image.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G94": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "W3C; HTML and W3C logo", "Wikimedia; Fireworks image", "Adobe; PDF logo" ] }, "htmlHintIgnore": [ "alt-require", "attr-lowercase" ] } }, { "title": "Image button has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/59796f/", "successCriteria": [ "non-text-content", "name-role-value" ], "wcagTechniques": [ "G94", "G95" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "59796f", "name": "Image button has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each image button element has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G94": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "Image has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/23a2a8/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [ "G94", "G95" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "23a2a8", "name": "Image has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each image either has a non-empty accessible name or is marked up as decorative.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G94": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "previous_authors": [ "Anne Thyme Nørregaard", "Stein Erik Skotkjerra" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "Important letter spacing in style attributes is wide enough", "permalink": "/standards-guidelines/act/rules/24afc2/", "successCriteria": [ "text-spacing" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "24afc2", "name": "Important letter spacing in style attributes is wide enough", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `style` attribute is not used to prevent adjusting `letter-spacing` by using `!important`, except if it's at least 0.12 times the font size.\n", "accessibility_requirements": { "wcag21:1.4.12": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "previous_authors": [ "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Important line height in style attributes is wide enough", "permalink": "/standards-guidelines/act/rules/78fd32/", "successCriteria": [ "text-spacing" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "78fd32", "name": "Important line height in style attributes is wide enough", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `style` attribute is not used to prevent adjusting `line-height` by using `!important`, except if it's at least 1.5 times the font size.\n", "accessibility_requirements": { "wcag21:1.4.12": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "previous_authors": [ "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Important word spacing in style attributes is wide enough", "permalink": "/standards-guidelines/act/rules/9e45ec/", "successCriteria": [ "text-spacing" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "9e45ec", "name": "Important word spacing in style attributes is wide enough", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `style` attribute is not used to prevent adjusting `word-spacing` by using `!important`, except if it's at least `0.16` times the font size.\n", "accessibility_requirements": { "wcag21:1.4.12": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "previous_authors": [ "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Link has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/c487ae/", "successCriteria": [ "name-role-value", "link-purpose-in-context", "link-purpose-link-only", "non-text-content" ], "wcagTechniques": [ "G91" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "c487ae", "name": "Link has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each link has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.4.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.4.9": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G91": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.1.1": { "secondary": "This success criterion is **related** to this rule. This is because HTML `area` elements are both links and non-text content. Most failed examples satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Image used in passed example 10 and failed example 9 is courtesy of NASA/JPL-Caltech." ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "Menuitem has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/m6b1q3/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "m6b1q3", "name": "Menuitem has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each element with a `menuitem` role has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS Styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "The \"file.svg\" icon is part of the Feather Icons package, which uses the [MIT license](https://github.com/feathericons/feather/blob/master/LICENSE)." ] } } }, { "title": "Meta element has no refresh delay", "permalink": "/standards-guidelines/act/rules/bc659a/", "successCriteria": [ "timing-adjustable", "interruptions", "change-on-request" ], "wcagTechniques": [ "G110", "H76" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "bc659a", "name": "Meta element has no refresh delay", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `meta` element is not used for delayed redirecting or refreshing.\n", "accessibility_requirements": { "wcag20:2.2.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.2.4": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule allows redirects longer than 20 hours. Some of the passed examples do not satisfy this success criterion." }, "wcag20:3.2.5": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule allows redirects longer than 20 hours. Some of the passed examples do not satisfy this success criterion." }, "wcag-technique:G110": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H76": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Jean-Yves Moyen", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "Meta element has no refresh delay (no exception)", "permalink": "/standards-guidelines/act/rules/bisz58/", "successCriteria": [ "interruptions", "change-on-request", "timing-adjustable" ], "wcagTechniques": [ "G110", "H76" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "bisz58", "name": "Meta element has no refresh delay (no exception)", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `meta` element is not used for delayed redirecting or refreshing.\n", "accessibility_requirements": { "wcag20:2.2.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:3.2.5": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G110": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H76": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.2.1": { "secondary": "This success criterion is **less strict** than this rule. This is because this criterion allows redirects longer than 20 hours. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "Meta viewport allows for zoom", "permalink": "/standards-guidelines/act/rules/b4f0c3/", "successCriteria": [ "resize-text", "reflow" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "b4f0c3", "name": "Meta viewport allows for zoom", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `meta` element retains the user agent ability to zoom.\n", "accessibility_requirements": { "wcag20:1.4.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag21:1.4.10": { "secondary": "This success criterion is **related** to this rule. This is because a page that cannot be zoomed up to 200% often does not reflow sufficiently either. Most failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "previous_authors": [ "Audrey Maniez", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Object element rendering non-text content has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/8fc3b6/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "8fc3b6", "name": "Object element rendering non-text content has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `object` element rendering non-text content has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Accessibility Tree" ], "acknowledgments": { "authors": [ "António Estriga" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Orientation of the page is not restricted using CSS transforms", "permalink": "/standards-guidelines/act/rules/b33eff/", "successCriteria": [ "orientation" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "b33eff", "name": "Orientation of the page is not restricted using CSS transforms", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that page content is not restricted to either `landscape` or `portrait` orientation using CSS transforms.\n", "accessibility_requirements": { "wcag21:1.3.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Audrey Maniez", "Jey Nandakumar", "Tom Brunet" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Role attribute has valid value", "permalink": "/standards-guidelines/act/rules/674b10/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [ "ARIA4", "G108" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "674b10", "name": "Role attribute has valid value", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `role` attribute has a valid value.\n", "accessibility_requirements": { "wcag-technique:ARIA4": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G108": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the success criterion can be satisfied by an element's implicit role when the explicit role is incorrect. Some of the failed examples may satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because the success criterion can be satisfied by an element's implicit role when the explicit role is incorrect. Some of the failed examples may satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Scrollable content can be reached with sequential focus navigation", "permalink": "/standards-guidelines/act/rules/0ssw9k/", "successCriteria": [ "keyboard", "keyboard-no-exception" ], "wcagTechniques": [ "G202" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "0ssw9k", "name": "Scrollable content can be reached with sequential focus navigation", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that scrollable elements or their descendants can be reached with sequential focus navigation so that they can be scrolled by keyboard\n", "accessibility_requirements": { "wcag20:2.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.1.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G202": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Summary element has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/2t702h/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "2t702h", "name": "Summary element has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `summary` element has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ] } } }, { "title": "SVG element with explicit role has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/7d6734/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "7d6734", "name": "SVG element with explicit role has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each SVG image element that is explicitly included in the accessibility tree has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Bryn Anderson" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Text has enhanced contrast", "permalink": "/standards-guidelines/act/rules/09o5cg/", "successCriteria": [ "contrast-enhanced", "contrast-minimum" ], "wcagTechniques": [ "G17", "G18" ], "deprecated": false, "proposed": false, "frontmatter": { "id": "09o5cg", "name": "Text has enhanced contrast", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the highest possible contrast of every text character with its background meets the enhanced contrast requirement.\n", "accessibility_requirements": { "wcag20:1.4.6": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G17": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G18": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.4.3": { "secondary": "This success criterion is **less strict** than this rule. This is because this criterion has a lower minimum contrast. Some of the failed examples may satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Text has minimum contrast", "permalink": "/standards-guidelines/act/rules/afw4f7/", "successCriteria": [ "contrast-minimum", "contrast-enhanced" ], "wcagTechniques": [], "deprecated": false, "proposed": false, "frontmatter": { "id": "afw4f7", "name": "Text has minimum contrast", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the highest possible contrast of every text character with its background meets the minimal contrast requirement.\n", "accessibility_requirements": { "wcag20:1.4.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.4.6": { "secondary": "This success criterion is **more strict** than this rule. This is because this criterion has a higher minimum contrast. Some of the passed examples do not satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "ARIA global properties not used where prohibited", "permalink": "/standards-guidelines/act/rules/kb1m8s/proposed/", "successCriteria": [ "info-and-relationships" ], "wcagTechniques": [ "ARIA5" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "kb1m8s", "name": "ARIA global properties not used where prohibited", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that global WAI-ARIA properties are not on elements whose role prohibits them.\n", "accessibility_requirements": { "aria12:prohibitedattributes": { "title": "ARIA 1.2, 5.2.5 Prohibited States and Properties", "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" }, "wcag-technique:ARIA5": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "previous_authors": [ "Anne Thyme Nørregaard", "Jean-Yves Moyen" ] } } }, { "title": "ARIA required context role", "permalink": "/standards-guidelines/act/rules/ff89c9/proposed/", "successCriteria": [ "info-and-relationships" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "ff89c9", "name": "ARIA required context role", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that an element with an explicit semantic role exists inside its required context.\n", "accessibility_requirements": { "wcag20:1.3.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Brian Bors", "Jean-Yves Moyen", "Wilco Fiers" ], "previous_authors": [ "Anne Thyme Nørregaard" ], "funding": [ "WAI-Tools" ] } } }, { "title": "ARIA required ID references exist", "permalink": "/standards-guidelines/act/rules/in6db8/proposed/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [], "deprecated": true, "proposed": true, "frontmatter": { "id": "in6db8", "name": "ARIA required ID references exist", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that every ID reference required by WAI-ARIA exists\n", "accessibility_requirements": { "aria12:propcharacteristic_value": { "title": "ARIA 1.2, 6.2.4 Value (Characteristics of States and Properties)", "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not check for alternatives which may be accessible. Some of the failed examples satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not check for alternatives which may be accessible. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ] }, "deprecated": "This rule has been deprecated because the `aria-controls` attribute is no longer required by the combobox and scrollbar roles. This rule is not maintained anymore and should not be used.\n" } }, { "title": "ARIA required owned elements", "permalink": "/standards-guidelines/act/rules/bc4a75/proposed/", "successCriteria": [ "info-and-relationships" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "bc4a75", "name": "ARIA required owned elements", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that an element with a semantic role that restricts which elements it can own only owns such elements.\n", "accessibility_requirements": { "wcag20:1.3.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "previous_authors": [ "Audrey Maniez", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "ARIA state or property is permitted", "permalink": "/standards-guidelines/act/rules/5c01ea/proposed/", "successCriteria": [ "info-and-relationships", "name-role-value" ], "wcagTechniques": [ "ARIA5" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "5c01ea", "name": "ARIA state or property is permitted", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that WAI-ARIA states or properties are allowed for the element they are specified on.\n", "accessibility_requirements": { "wcag-technique:ARIA5": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "aria12:state_property_processing": { "title": "ARIA 1.2, 8.6 State and Property Attribute Processing", "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" }, "wcag20:1.3.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." }, "wcag20:4.1.2": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not ignore irrelevant ARIA properties. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Attribute is not duplicated", "permalink": "/standards-guidelines/act/rules/e6952f/proposed/", "successCriteria": [ "parsing" ], "wcagTechniques": [ "H94" ], "deprecated": true, "proposed": true, "frontmatter": { "id": "e6952f", "name": "Attribute is not duplicated", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that HTML and SVG starting tags do not contain duplicated attributes.\n", "accessibility_requirements": { "wcag20:4.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H94": { "forConformance": false, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" } }, "input_aspects": [ "Source code" ], "acknowledgments": { "authors": [ "Emma Pratt Richens", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "attr-no-duplication" ], "deprecated": "This rule has been deprecated because success criterion 4.1.1 has \nbeen removed in WCAG 2.2 and for WCAG 2.1 and 2.0 should be \nconsidered to always pass.\n" } }, { "title": "Audio and visuals of video element have transcript", "permalink": "/standards-guidelines/act/rules/1a02b0/proposed/", "successCriteria": [ "media-alternative-prerecorded", "info-and-relationships", "audio-only-and-video-only-prerecorded" ], "wcagTechniques": [ "G69" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "1a02b0", "name": "Audio and visuals of video element have transcript", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that non-streaming `video` elements have all audio and visual information available in a transcript.\n", "accessibility_requirements": { "wcag20:1.2.8": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G69": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.3.1": { "secondary": "This success criterion is **related** to this rule. This is because this criterion applies to a visible transcript." }, "wcag20:1.2.1": { "secondary": "This success criterion is **less strict** than this rule. This is because this criterion does not require a transcript when the audio-only or video-only is a media alternative for text and is clearly labeled as such. Some of the failed examples may satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] }, "htmlHintIgnore": [ "tag-pair" ] } }, { "title": "Audio element content has text alternative", "permalink": "/standards-guidelines/act/rules/e7aa44/proposed/", "successCriteria": [ "audio-only-and-video-only-prerecorded" ], "wcagTechniques": [ "G158" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "e7aa44", "name": "Audio element content has text alternative", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that `audio` elements have a text alternative available.\n", "accessibility_requirements": { "wcag20:1.2.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G158": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "2eb176", "afb423" ], "acknowledgments": { "authors": [ "Brian Bors", "John Hicks", "Rafal Charlampowicz", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Audio element content has transcript", "permalink": "/standards-guidelines/act/rules/2eb176/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "2eb176", "name": "Audio element content has transcript", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that `audio` elements have a transcript that includes all auditory information.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Audio element content is media alternative for text", "permalink": "/standards-guidelines/act/rules/afb423/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "afb423", "name": "Audio element content is media alternative for text", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the `audio` element is a media alternative for text on the page.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Audio or video element avoids automatically playing audio", "permalink": "/standards-guidelines/act/rules/80f0bf/proposed/", "successCriteria": [ "audio-control" ], "wcagTechniques": [ "G60", "G170", "G171" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "80f0bf", "name": "Audio or video element avoids automatically playing audio", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that audio or video that plays automatically does not have audio that lasts for more than 3 seconds or has an audio control mechanism to stop or mute it.\n", "accessibility_requirements": { "wcag20:1.4.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-text:cc5": { "title": "WCAG Non-Interference", "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G60": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G170": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G171": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "4c31df", "aaa1bf" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "Audio or video element that plays automatically has a control mechanism", "permalink": "/standards-guidelines/act/rules/4c31df/proposed/", "successCriteria": [], "wcagTechniques": [ "G170" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "4c31df", "name": "Audio or video element that plays automatically has a control mechanism", "rules_format": 1.1, "rule_type": "atomic", "description": "audio or video that plays automatically must have a control mechanism.\n", "accessibility_requirements": { "wcag-technique:G170": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] }, "htmlHintIgnore": [ "title-require" ] } }, { "title": "Audio or video element that plays automatically has no audio that lasts more than 3 seconds", "permalink": "/standards-guidelines/act/rules/aaa1bf/proposed/", "successCriteria": [], "wcagTechniques": [ "G60" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "aaa1bf", "name": "Audio or video element that plays automatically has no audio that lasts more than 3 seconds", "rules_format": 1.1, "rule_type": "atomic", "description": "`audio` or `video` that plays automatically does not output audio for more than 3 seconds.\n", "accessibility_requirements": { "wcag-technique:G60": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "JFK's \"We Choose the Moon\" speech excerpt is courtesy of NASA." ] } } }, { "title": "Block of repeated content is collapsible", "permalink": "/standards-guidelines/act/rules/3e12e1/proposed/", "successCriteria": [], "wcagTechniques": [ "SCR28" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "3e12e1", "name": "Block of repeated content is collapsible", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that repeated blocks of content are collapsible\n", "accessibility_requirements": { "wcag-technique:SCR28": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS Styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "_The Three Kingdoms_ by Luo Guanzhong, translation by Yu Sumei (Tuttle publishing, 2014, ISBN 9780804843935)" ] } } }, { "title": "Bypass Blocks of Repeated Content", "permalink": "/standards-guidelines/act/rules/cf77f2/proposed/", "successCriteria": [ "bypass-blocks" ], "wcagTechniques": [ "G1", "G123", "G124", "H69", "SCR28" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "cf77f2", "name": "Bypass Blocks of Repeated Content", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that each page has a mechanism to bypass repeated blocks of content.\n", "accessibility_requirements": { "wcag20:2.4.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G1": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G123": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G124": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H69": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:SCR28": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "047fe0", "b40fd1", "3e12e1", "ye5d6e" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "_Romance of the Three Kingdoms_ by Luo Guanzhong, translation by Charles Henry Brewitt-Taylor (Tuttle Publishing, 1925, ISBN 9780804834674)", "_Three Kingdoms_ by Luo Guanzhong, translation by Moss Roberts (Foreign Language Press, 1976, ISBN 7-119-00590-1)", "_The Three Kingdoms_ by Luo Guanzhong, translation by Yu Sumei (Tuttle publishing, 2014, ISBN 9780804843935)" ] } } }, { "title": "Content has alternative for visual reference", "permalink": "/standards-guidelines/act/rules/9bd38c/proposed/", "successCriteria": [ "sensory-characteristics" ], "wcagTechniques": [ "G96" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "9bd38c", "name": "Content has alternative for visual reference", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that when content is identified through a visual reference, there are also non-visual references identifying the same content.\n", "accessibility_requirements": { "wcag20:1.3.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G96": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS Styling", "DOM Tree", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Daniël Strik", "Jean-Yves Moyen", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Device motion based changes to the content can also be created from the user interface", "permalink": "/standards-guidelines/act/rules/7677a9/proposed/", "successCriteria": [ "motion-actuation" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "7677a9", "name": "Device motion based changes to the content can also be created from the user interface", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that changes to the content of a web page that result from device motion events can also be caused by user interface components.\n", "accessibility_requirements": { "wcag21:2.5.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Accessibility tree" ], "acknowledgments": { "authors": [ "Carlos Duarte", "João Vicente" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "attr-lowercase" ] } }, { "title": "Device motion based changes to the content can be disabled", "permalink": "/standards-guidelines/act/rules/c249d5/proposed/", "successCriteria": [ "motion-actuation" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "c249d5", "name": "Device motion based changes to the content can be disabled", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that it is possible to disable any changes to the content of the web page resulting from device motion based events.\n", "accessibility_requirements": { "wcag21:2.5.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Accessibility tree" ], "acknowledgments": { "authors": [ "Carlos Duarte", "João Vicente" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "attr-lowercase" ] } }, { "title": "Document has a landmark with non-repeated content", "permalink": "/standards-guidelines/act/rules/b40fd1/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "b40fd1", "name": "Document has a landmark with non-repeated content", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each page has an element with a landmark semantic role starting with non-repeated content\n", "accessibility_requirements": null, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "_Romance of the Three Kingdoms_ by Luo Guanzhong, translation by Charles Henry Brewitt-Taylor (Tuttle Publishing, 1925, ISBN 9780804834674)", "_Three Kingdoms_ by Luo Guanzhong, translation by Moss Roberts (Foreign Language Press, 1976, ISBN 7-119-00590-1)", "_The Three Kingdoms_ by Luo Guanzhong, translation by Yu Sumei (Tuttle publishing, 2014, ISBN 9780804843935)" ] } } }, { "title": "Document has an instrument to move focus to non-repeated content", "permalink": "/standards-guidelines/act/rules/ye5d6e/proposed/", "successCriteria": [], "wcagTechniques": [ "G1", "G123", "G124" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "ye5d6e", "name": "Document has an instrument to move focus to non-repeated content", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that there is an instrument to move focus to non-repeated content in the page\n", "accessibility_requirements": { "wcag-technique:G1": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G123": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G124": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "_The Three Kingdoms_ by Luo Guanzhong, translation by Yu Sumei (Tuttle publishing, 2014, ISBN 9780804843935)" ] } } }, { "title": "Document has heading for non-repeated content", "permalink": "/standards-guidelines/act/rules/047fe0/proposed/", "successCriteria": [], "wcagTechniques": [ "H69" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "047fe0", "name": "Document has heading for non-repeated content", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the non-repeated content contains a heading\n", "accessibility_requirements": { "wcag-technique:H69": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS Styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ], "assets": [ "_The Three Kingdoms_ by Luo Guanzhong, translation by Yu Sumei (Tuttle publishing, 2014, ISBN 9780804843935)", "Image from a Ming Dynasty edition of the Romance of the Three Kingdoms, original kept in the library holdings of Peking University." ] } } }, { "title": "Error message describes invalid form field value", "permalink": "/standards-guidelines/act/rules/36b590/proposed/", "successCriteria": [ "error-identification" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "36b590", "name": "Error message describes invalid form field value", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that text error messages provided when the user completes a form field with invalid values or using an invalid format, identify the cause of the error or how to fix the error.\n", "accessibility_requirements": { "wcag20:3.3.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Carlos Duarte", "João Vicente", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Focusable element has no keyboard trap", "permalink": "/standards-guidelines/act/rules/80af7b/proposed/", "successCriteria": [ "no-keyboard-trap" ], "wcagTechniques": [ "G21" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "80af7b", "name": "Focusable element has no keyboard trap", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks for keyboard traps. This includes use of both standard and non-standard keyboard navigation to navigate through all content without becoming trapped.\n", "accessibility_requirements": { "wcag20:2.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-text:cc5": { "title": "WCAG Non-Interference", "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G21": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "a1b64e", "ebe86a" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Dagfinn Rømen", "Geir Sindre Fossøy" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Focusable element has no keyboard trap via non-standard navigation", "permalink": "/standards-guidelines/act/rules/ebe86a/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "ebe86a", "name": "Focusable element has no keyboard trap via non-standard navigation", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks if it is possible to use non-standard keyboard navigation to navigate through content where focus is trapped when using standard ways of keyboard navigation.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Carlos Duarte", "Dagfinn Rømen", "Geir Sindre Fossøy", "Malin Øvrebø", "Shadi Abou-Zahra", "Stein Erik Skotkjerra" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Focusable element has no keyboard trap via standard navigation", "permalink": "/standards-guidelines/act/rules/a1b64e/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "a1b64e", "name": "Focusable element has no keyboard trap via standard navigation", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks if it is possible to use standard keyboard navigation to navigate through all content on a web page without becoming trapped in any element.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Carlos Duarte", "Dagfinn Rømen", "Geir Sindre Fossøy", "Malin Øvrebø", "Shadi Abou-Zahra", "Stein Erik Skotkjerra", "Tom Brunet" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Form field label is descriptive", "permalink": "/standards-guidelines/act/rules/cc0f0a/proposed/", "successCriteria": [ "headings-and-labels" ], "wcagTechniques": [ "G131" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "cc0f0a", "name": "Form field label is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that labels describe the purpose of form field elements.\n", "accessibility_requirements": { "wcag20:2.4.6": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G131": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen", "Wilco Fiers" ], "previous_authors": [ "Dagfinn Rømen", "Geir Sindre Fossøy" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Heading has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/ffd0e9/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "ffd0e9", "name": "Heading has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each heading has a non-empty accessible name.\n", "accessibility_requirements": { "aria12:namecalculation": { "title": "ARIA 1.2, 5.2.8 Accessible Name Calculation", "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Heading is descriptive", "permalink": "/standards-guidelines/act/rules/b49b2e/proposed/", "successCriteria": [ "headings-and-labels" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "b49b2e", "name": "Heading is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that headings describe the topic or purpose of the content.\n", "accessibility_requirements": { "wcag20:2.4.6": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Carlos Duarte", "Dagfinn Rømen", "Geir Sindre Fossøy", "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] } } }, { "title": "HTML element language subtag matches language", "permalink": "/standards-guidelines/act/rules/off6ek/proposed/", "successCriteria": [ "language-of-parts" ], "wcagTechniques": [ "H58" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "off6ek", "name": "HTML element language subtag matches language", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the primary language subtag of an element matches its default language\n", "accessibility_requirements": { "wcag20:3.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "further testing needed" }, "wcag-technique:H58": { "forConformance": false, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" } }, "input_aspects": [ "DOM tree", "Accessibility tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "HTML page lang and xml:lang attributes have matching values", "permalink": "/standards-guidelines/act/rules/5b7ae0/proposed/", "successCriteria": [ "language-of-page" ], "wcagTechniques": [], "deprecated": true, "proposed": true, "frontmatter": { "id": "5b7ae0", "name": "HTML page lang and xml:lang attributes have matching values", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that both `lang` and `xml:lang` attributes on the root element of a non-embedded HTML page, have the same primary language subtag.\n", "accessibility_requirements": { "wcag20:3.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "deprecated": "This rule has been deprecated, as modern screen readers no longer use xml:lang when the lang attribute is given, regardless of which MIME type the page is served with. This rule is not maintained anymore and should not be used.\n", "acknowledgments": { "authors": [ "Jey Nandakumar" ], "previous_authors": [ "Annika Nietzio" ], "funding": [ "WAI-Tools" ] } } }, { "title": "HTML page language subtag matches default language", "permalink": "/standards-guidelines/act/rules/ucwvc8/proposed/", "successCriteria": [ "language-of-page" ], "wcagTechniques": [ "H57" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "ucwvc8", "name": "HTML page language subtag matches default language", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the primary language subtag of the page language matches the default language of the page\n", "accessibility_requirements": { "wcag20:3.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "further testing needed" }, "wcag-technique:H57": { "forConformance": false, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" } }, "input_aspects": [ "DOM tree", "Accessibility tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ] } }, { "title": "Id attribute value is unique", "permalink": "/standards-guidelines/act/rules/3ea0c8/proposed/", "successCriteria": [ "parsing" ], "wcagTechniques": [ "H93" ], "deprecated": true, "proposed": true, "frontmatter": { "id": "3ea0c8", "name": "Id attribute value is unique", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that all `id` attribute values on a single page are unique.\n", "accessibility_requirements": { "wcag20:4.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H93": { "forConformance": false, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "satisfied" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "id-unique" ], "deprecated": "This rule has been deprecated because success criterion 4.1.1 has \nbeen removed in WCAG 2.2 and for WCAG 2.1 and 2.0 should be \nconsidered to always pass.\n" } }, { "title": "Iframe element has non-empty accessible name", "permalink": "/standards-guidelines/act/rules/cae760/proposed/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "cae760", "name": "Iframe element has non-empty accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each `iframe` element has a non-empty accessible name.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Jey Nandakumar", "Tom Brunet", "Wilco Fiers" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Iframe elements with identical accessible names have equivalent purpose", "permalink": "/standards-guidelines/act/rules/4b1c6c/proposed/", "successCriteria": [ "name-role-value" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "4b1c6c", "name": "Iframe elements with identical accessible names have equivalent purpose", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that `iframe` elements with identical accessible names embed the same resource or equivalent resources.\n", "accessibility_requirements": { "wcag20:4.1.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Audrey Maniez", "Jean-Yves Moyen", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Image filename is accessible name for image", "permalink": "/standards-guidelines/act/rules/9eb3f6/proposed/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [ "G94", "G95" ], "deprecated": true, "proposed": true, "frontmatter": { "id": "9eb3f6", "name": "Image filename is accessible name for image", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that image elements that use their source filename as their accessible name do so without loss of information to the user.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G94": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "previous_authors": [ "Bryn Anderson" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "alt-require" ], "assets": [ "The picture of Nyhavn (Copenhagen) is authored by [Jorge Franganillo](https://500px.com/franganillo), licensed under the [Creative Commons Attribution 3.0 Unported](https://creativecommons.org/licenses/by/3.0/deed.en) license.", "The picture of bread is a public domain [picture by Bicanski](https://pixnio.com/media/bread-breakfast-fresh-homemade-wheat)." ], "deprecated": "This rule has been deprecated and superseded by Rule [Image accessible name is descriptive](https://www.w3.org/WAI/standards-guidelines/act/rules/qt1vmo/). This rule is not maintained anymore and should not be used.\n" } }, { "title": "Image not in the accessibility tree is decorative", "permalink": "/standards-guidelines/act/rules/e88epe/proposed/", "successCriteria": [ "non-text-content" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "e88epe", "name": "Image not in the accessibility tree is decorative", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that visible `img`, `svg` and `canvas` elements that are ignored by assistive technologies are decorative.\n", "accessibility_requirements": { "wcag20:1.1.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "Accessibility tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "W3C", "Wikimedia", "Adobe" ] }, "htmlHintIgnore": [ "attr-lowercase" ] } }, { "title": "Link in context is descriptive", "permalink": "/standards-guidelines/act/rules/5effbb/proposed/", "successCriteria": [ "link-purpose-in-context", "link-purpose-link-only" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "5effbb", "name": "Link in context is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the accessible name of a link together with its context describes its purpose.\n", "accessibility_requirements": { "wcag20:2.4.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.4.9": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule also considers the context of the link, in addition to the link text. Some of the passed examples do not satisfy this success criterion." } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Carlos Duarte", "Marie Trudelle", "Ramit Garg" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Link is descriptive", "permalink": "/standards-guidelines/act/rules/aizyf1/proposed/", "successCriteria": [ "link-purpose-link-only" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "aizyf1", "name": "Link is descriptive", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that the accessible name of a link describes its purpose.\n", "accessibility_requirements": { "wcag20:2.4.9": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Links with identical accessible names and same context serve equivalent purpose", "permalink": "/standards-guidelines/act/rules/fd3a94/proposed/", "successCriteria": [ "link-purpose-in-context", "link-purpose-link-only" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "fd3a94", "name": "Links with identical accessible names and same context serve equivalent purpose", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that links with identical accessible names in the same context resolve to the same or equivalent resources.\n", "accessibility_requirements": { "wcag20:2.4.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:2.4.9": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule also considers the context of the link, in addition to the link text. Some of the passed examples do not satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Carlos Duarte", "Giacomo Petri" ], "previous_authors": [ "Anne Thyme Nørregaard" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "attr-lowercase", "alt-require" ] } }, { "title": "Links with identical accessible names have equivalent purpose", "permalink": "/standards-guidelines/act/rules/b20e66/proposed/", "successCriteria": [ "link-purpose-link-only" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "b20e66", "name": "Links with identical accessible names have equivalent purpose", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that links with identical accessible names resolve to the same resource or equivalent resources.\n", "accessibility_requirements": { "wcag20:2.4.9": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "wcag20:2.4.4": null, "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not consider the context of the link. Some of the failed examples satisfy this success criterion.", "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling", "Language" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Jean-Yves Moyen" ], "funding": [ "WAI-Tools" ] }, "htmlHintIgnore": [ "attr-lowercase", "alt-require" ] } }, { "title": "No keyboard shortcut uses only printable characters", "permalink": "/standards-guidelines/act/rules/ffbc54/proposed/", "successCriteria": [ "character-key-shortcuts" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "ffbc54", "name": "No keyboard shortcut uses only printable characters", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that if keyboard shortcuts are implemented using only printable characters, then there is a mechanism to disable the shortcut, or to remap the shortcut to use one or more non-printable character keys, or the shortcut for a user interface component is only available when that component has focus.\n", "accessibility_requirements": { "wcag21:2.1.4": { "forConformance": true, "failed": "not satisfied", "passed": "satisfied", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree" ], "acknowledgments": { "authors": [ "Carlos Duarte", "João Vicente" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Table header cell has assigned cells", "permalink": "/standards-guidelines/act/rules/d0f69e/proposed/", "successCriteria": [ "info-and-relationships" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "d0f69e", "name": "Table header cell has assigned cells", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that each table header has assigned cells in a table element.\n", "accessibility_requirements": { "wcag20:1.3.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "CSS styling", "DOM Tree" ], "acknowledgments": { "authors": [ "Audrey Maniez", "Helen Burge", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Text content that changes automatically can be paused, stopped or hidden", "permalink": "/standards-guidelines/act/rules/efbfc7/proposed/", "successCriteria": [ "pause-stop-hide" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "efbfc7", "name": "Text content that changes automatically can be paused, stopped or hidden", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that for any text content that regularly changes automatically, there are instruments to pause, stop, or hide it or to control its changing frequency.\n", "accessibility_requirements": { "wcag20:2.2.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-text:cc5": { "title": "WCAG Non-Interference", "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Carlos Duarte" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Video element auditory content has accessible alternative", "permalink": "/standards-guidelines/act/rules/eac66b/proposed/", "successCriteria": [ "captions-prerecorded" ], "wcagTechniques": [ "G87", "G93", "H95" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "eac66b", "name": "Video element auditory content has accessible alternative", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that `video` elements have an alternative for information conveyed through audio.\n", "accessibility_requirements": { "wcag20:1.2.2": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G87": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G93": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "ab4d13", "f51b46" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Video element auditory content has captions", "permalink": "/standards-guidelines/act/rules/f51b46/proposed/", "successCriteria": [ "audio-only-and-video-only-prerecorded" ], "wcagTechniques": [ "G87", "G93", "H95" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "f51b46", "name": "Video element auditory content has captions", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that captions are available for audio information in non-streaming `video` elements.\n", "accessibility_requirements": { "wcag-technique:G87": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G93": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H95": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.2.1": { "secondary": "This success criterion is **less strict** than this rule. This is because the rule does not consider that the video may be a media alternative for text. Some of the failed examples satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Video element content is media alternative for text", "permalink": "/standards-guidelines/act/rules/ab4d13/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "ab4d13", "name": "Video element content is media alternative for text", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks non-streaming `video` is a media alternative for text on the page.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Video element visual content has accessible alternative", "permalink": "/standards-guidelines/act/rules/c5a4ea/proposed/", "successCriteria": [ "audio-description-or-media-alternative-prerecorded", "audio-description-prerecorded", "media-alternative-prerecorded" ], "wcagTechniques": [ "G8", "G69", "G78", "G173" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "c5a4ea", "name": "Video element visual content has accessible alternative", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that `video` elements with audio have an alternative for the video content as audio or as text.\n", "accessibility_requirements": { "wcag20:1.2.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.2.5": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule allows a media alternative in place of audio description. Some of the passed examples do not satisfy this success criterion." }, "wcag20:1.2.8": { "secondary": "This success criterion is **more strict** than this rule. This is because the rule allows audio description in place of a media alternative. Some of the passed examples do not satisfy this success criterion." }, "wcag-technique:G8": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G69": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G78": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G173": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "1ea59c", "1a02b0", "ab4d13" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Video element visual content has audio description", "permalink": "/standards-guidelines/act/rules/1ea59c/proposed/", "successCriteria": [], "wcagTechniques": [ "G8", "G78", "G173" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "1ea59c", "name": "Video element visual content has audio description", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that non-streaming `video` elements have all visual information also contained in the audio.\n", "accessibility_requirements": { "wcag-technique:G8": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G78": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G173": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] } } }, { "title": "Video element visual content has description track", "permalink": "/standards-guidelines/act/rules/f196ce/proposed/", "successCriteria": [], "wcagTechniques": [ "G78", "H96" ], "deprecated": true, "proposed": true, "frontmatter": { "id": "f196ce", "name": "Video element visual content has description track", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that description tracks that come with non-streaming `video` elements are descriptive.\n", "accessibility_requirements": { "wcag-technique:G78": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:H96": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] }, "deprecated": "This rule has been deprecated as descriptions tracks were removed in [#1665](https://github.com/act-rules/act-rules.github.io/pull/1665) as a way to provide video alternative. This rule is not maintained anymore and should not be used.\n" } }, { "title": "Video element visual content has strict accessible alternative", "permalink": "/standards-guidelines/act/rules/1ec09b/proposed/", "successCriteria": [ "audio-description-prerecorded" ], "wcagTechniques": [ "G8", "G78", "G173" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "1ec09b", "name": "Video element visual content has strict accessible alternative", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that `video` elements with audio have audio description.\n", "accessibility_requirements": { "wcag20:1.2.5": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G8": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G78": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G173": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "1ea59c", "ab4d13" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Video element visual-only content has accessible alternative", "permalink": "/standards-guidelines/act/rules/c3232f/proposed/", "successCriteria": [ "audio-only-and-video-only-prerecorded" ], "wcagTechniques": [ "G159", "G166" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "c3232f", "name": "Video element visual-only content has accessible alternative", "rules_format": 1.1, "rule_type": "composite", "description": "This rule checks that `video` elements without audio have an alternative available.\n", "accessibility_requirements": { "wcag20:1.2.1": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G159": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G166": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_rules": [ "fd26cf", "ee13b5", "d7ba54" ], "acknowledgments": { "authors": [ "Brian Bors", "John Hicks", "Rafal Charlampowicz", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)", "Web Accessibility Perspective videos by W3C WAI." ] }, "htmlHintIgnore": [ "tag-pair" ] } }, { "title": "Video element visual-only content has audio track alternative", "permalink": "/standards-guidelines/act/rules/d7ba54/proposed/", "successCriteria": [], "wcagTechniques": [ "G166" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "d7ba54", "name": "Video element visual-only content has audio track alternative", "rules_format": 1.1, "rule_type": "atomic", "description": "Non-streaming `video` elements without audio must have an audio alternative.\n", "accessibility_requirements": { "wcag-technique:G166": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] } } }, { "title": "Video element visual-only content has description track", "permalink": "/standards-guidelines/act/rules/ac7dc6/proposed/", "successCriteria": [], "wcagTechniques": [ "H96" ], "deprecated": true, "proposed": true, "frontmatter": { "id": "ac7dc6", "name": "Video element visual-only content has description track", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that description tracks that come with non-streaming `video` elements, without audio, are descriptive.\n", "accessibility_requirements": { "wcag-technique:H96": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] }, "deprecated": "This rule has been deprecated as descriptions tracks were removed in [#1665](https://github.com/act-rules/act-rules.github.io/pull/1665) as a way to provide video alternative. This rule is not maintained anymore and should not be used.\n" } }, { "title": "Video element visual-only content has transcript", "permalink": "/standards-guidelines/act/rules/ee13b5/proposed/", "successCriteria": [ "info-and-relationships", "audio-only-and-video-only-prerecorded" ], "wcagTechniques": [ "G159" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "ee13b5", "name": "Video element visual-only content has transcript", "rules_format": 1.1, "rule_type": "atomic", "description": "Non-streaming `video` elements without audio must have all visual information available in a transcript.\n", "accessibility_requirements": { "wcag-technique:G159": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag20:1.3.1": { "secondary": "This success criterion is **related** to this rule. This is because this criterion applies to a visible transcript." }, "wcag20:1.2.1": { "secondary": "This success criterion is **less strict** than this rule. This is because this criterion does not require a transcript when the audio-only or video-only is a media alternative for text and is clearly labeled as such. Some of the failed examples may satisfy this success criterion." } }, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Visual output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Rabbit video is © copyright 2008, Blender Foundation / [www.bigbuckbunny.org](https://www.bigbuckbunny.org)" ] }, "htmlHintIgnore": [ "tag-pair" ] } }, { "title": "Video element visual-only content is media alternative for text", "permalink": "/standards-guidelines/act/rules/fd26cf/proposed/", "successCriteria": [], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "fd26cf", "name": "Video element visual-only content is media alternative for text", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks non-streaming silent `video` is a media alternative for text on the page.\n", "accessibility_requirements": null, "input_aspects": [ "DOM Tree", "CSS Styling", "Audio output", "Language" ], "acknowledgments": { "authors": [ "Brian Bors", "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "Web Accessibility Perspective videos by W3C WAI." ] } } }, { "title": "Visible label is part of accessible name", "permalink": "/standards-guidelines/act/rules/2ee8b8/proposed/", "successCriteria": [ "label-in-name" ], "wcagTechniques": [ "G208" ], "deprecated": false, "proposed": true, "frontmatter": { "id": "2ee8b8", "name": "Visible label is part of accessible name", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that interactive elements labeled through content have their visible label as part of their accessible name.\n", "accessibility_requirements": { "wcag21:2.5.3": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" }, "wcag-technique:G208": { "forConformance": false, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "Accessibility Tree", "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Anne Thyme Nørregaard", "Bryn Anderson", "Jey Nandakumar" ], "funding": [ "WAI-Tools" ] } } }, { "title": "Zoomed text node is not clipped with CSS overflow", "permalink": "/standards-guidelines/act/rules/59br37/proposed/", "successCriteria": [ "resize-text" ], "wcagTechniques": [], "deprecated": false, "proposed": true, "frontmatter": { "id": "59br37", "name": "Zoomed text node is not clipped with CSS overflow", "rules_format": 1.1, "rule_type": "atomic", "description": "This rule checks that text nodes are not unintentionally clipped by overflow, when a page is zoomed to 200% on 1280 by 1024 viewport;\n", "accessibility_requirements": { "wcag20:1.4.4": { "forConformance": true, "failed": "not satisfied", "passed": "further testing needed", "inapplicable": "further testing needed" } }, "input_aspects": [ "DOM Tree", "CSS Styling" ], "acknowledgments": { "authors": [ "Wilco Fiers" ], "funding": [ "WAI-Tools" ], "assets": [ "The Raven, poem by Edgar Allan Poe" ] } } } ] }