diff --git a/__tests__/spelling-ignore.yml b/__tests__/spelling-ignore.yml index d08b61884f..c11d183830 100644 --- a/__tests__/spelling-ignore.yml +++ b/__tests__/spelling-ignore.yml @@ -205,6 +205,7 @@ - reflow - Viewport - dom-meta-content +- showModal # Unsure why the dictionary does not have these words - programmatically diff --git a/_rules/iframe-with-interactive-content-in-tab-order-akn7bn.md b/_rules/iframe-with-interactive-content-in-tab-order-akn7bn.md index e31dbad86f..82a1b7ee9c 100644 --- a/_rules/iframe-with-interactive-content-in-tab-order-akn7bn.md +++ b/_rules/iframe-with-interactive-content-in-tab-order-akn7bn.md @@ -28,7 +28,7 @@ acknowledgments: ## Applicability -This rule applies to any `iframe` element that [contains](#akn7bn:contain) at least one element for which all the following are true: +This rule applies to any `iframe` element that is not [inert][] and that [contains](#akn7bn:contain) at least one element for which all the following are true: - the element is [visible][]; and - the element is part of the [sequential focus navigation order][] of the `iframe`'s [document][]. @@ -122,10 +122,44 @@ This `iframe` element contains a link that is not part of its [sequential focus ``` +#### Inapplicable Example 5 + +This `iframe` element is [inert][] because of its own `inert` [attribute value][]. + +```html + +``` + +#### Inapplicable Example 6 + +Once the "Privacy policy details" button is activated, the `iframe` element becomes [inert][] because of the showModal() method, which causes the `iframe` to be [blocked by a modal]. + +```html + +
+ +
+ +

Privacy Policy

+

We store no data.

+ +
+ +``` + [attribute value]: #attribute-value 'Definition of Attribute Value' +[blocked by a modal]: https://html.spec.whatwg.org/multipage/interaction.html#blocked-by-a-modal-dialog [container document]: https://html.spec.whatwg.org/#bc-container-document 'HTML browsing context container document, 2020/12/18' [document]: https://html.spec.whatwg.org/multipage/dom.html#document 'HTML definition of document' [flattened tabindex-ordered focus navigation scope]: https://html.spec.whatwg.org/multipage/interaction.html#flattened-tabindex-ordered-focus-navigation-scope 'HTML - Living Standard, 2022/07/08' +[inert]: #inert 'Definition of Inert' [nested browsing context]: https://html.spec.whatwg.org/#nested-browsing-context 'HTML nested browsing context, 2020/12/18' [owner document]: https://dom.spec.whatwg.org/#dom-node-ownerdocument 'DOM node owner document property, 2020/12/18' [sc211]: https://www.w3.org/TR/WCAG21/#keyboard 'WCAG 2.1 Success criterion 2.1.1 Keyboard' diff --git a/pages/glossary/inert.md b/pages/glossary/inert.md new file mode 100644 index 0000000000..a3ab819703 --- /dev/null +++ b/pages/glossary/inert.md @@ -0,0 +1,20 @@ +--- +title: Inert +key: inert +unambiguous: true +objective: true +input_aspects: + - Accessibility tree + - CSS styling + - DOM tree +--- + +An [HTML or SVG element][] is inert if: +- it has an `inert` [attribute value][] of true; or +- one of its ancestor elements in the [flat tree][] has an `inert` [attribute value][] of true; or +- it is [blocked by a modal][]. + +[HTML or SVG element]: #namespaced-element 'Definition of HTML or SVG element' +[attribute value]: #attribute-value 'Definition of Attribute value' +[blocked by a modal]: https://html.spec.whatwg.org/multipage/interaction.html#blocked-by-a-modal-dialog +[flat tree]: https://drafts.csswg.org/css-scoping/#flat-tree 'Definition of flat tree'