diff --git a/_rules/aria-hidden-no-focusable-content-6cfa84.md b/_rules/aria-hidden-no-focusable-content-6cfa84.md index 8467b049aba..92e3df5a97e 100755 --- a/_rules/aria-hidden-no-focusable-content-6cfa84.md +++ b/_rules/aria-hidden-no-focusable-content-6cfa84.md @@ -1,9 +1,9 @@ --- id: 6cfa84 -name: Element with aria-hidden has no focusable content +name: Element with aria-hidden has no content in sequential focus navigation rule_type: atomic description: | - This rule checks that elements with an `aria-hidden` attribute do not contain focusable elements. + This rule checks that elements with an `aria-hidden` attribute do not contain elements that are part of the sequential focus navigation and focusable. accessibility_requirements: wcag20:4.1.2: # Name, Role, Value (A) forConformance: true @@ -32,11 +32,11 @@ This rule applies to any element with an `aria-hidden` [attribute value][] of `t ## Expectation -None of the target elements are [focusable][], nor do they have [descendants](https://dom.spec.whatwg.org/#concept-tree-descendant) in the [flat tree](https://drafts.csswg.org/css-scoping/#flat-tree) that are [focusable][]. +None of the target elements has an [inclusive descendant][] in the [flat tree][] that are [focusable][] and part of the [sequential focus navigation][]. ## Assumptions -Interacting with the page does not result in changing the `aria-hidden` [attribute value][] of target elements. An example of such a situation would be when closing a modal dialog makes previously hidden and not [focusable][] elements become [focusable][]. +Interacting with the page does not result in changing the `aria-hidden` [attribute value][] of target elements. An example of such a situation would be when closing a modal dialog makes previously hidden elements that were not [focusable][] or part of the [sequential focus navigation][] become [focusable][] and part of the [sequential focus navigation][]. ## Accessibility Support @@ -48,7 +48,7 @@ Using `aria-hidden="false"` on a descendant of an element with `aria-hidden="tru By adding `aria-hidden="true"` to an element, content authors ensure that assistive technologies will ignore the element. This can be used to hide parts of a web page that are [pure decoration](https://www.w3.org/TR/WCAG21/#dfn-pure-decoration), such as icon fonts - that are not meant to be read by assistive technologies. -A [focusable][] element with `aria-hidden="true"` is ignored as part of the reading order, but still part of the focus order, making its state of [visible](#visible) or hidden unclear. +An element with an `aria-hidden` attribute set to `true` that is also part of the [sequential focus navigation][] may cause confusion for users of assistive technologies because the element can be reached via [sequential focus navigation][], but it should be hidden and not [included in the accessibility tree][]. The 1 second time span introduced in the exception of the definition of [focusable][] is an arbitrary limit which is not included in WCAG. Given that scripts can manage the focus state of elements, testing the focused state of an element consistently would be impractical without a time limit. @@ -71,7 +71,7 @@ The 1 second time span introduced in the exception of the definition of [focusab #### Passed Example 1 -This `p` element is not [focusable][]. +This `p` element is not part of the [sequential focus navigation][]. ```html @@ -79,7 +79,7 @@ This `p` element is not [focusable][]. #### Passed Example 2 -This `a` element is not [focusable][] because it is hidden through CSS. +This `a` element is not part of the [sequential focus navigation][] because it is hidden through CSS. ```html