Skip to content

Commit 93ae5bf

Browse files
Jym77giacomo-petricarlosapaduartedan-tripp-siteimproveWilcoFiers
authored
"Iframe not with interactive element" [akn7bn]: handle inert iframe (act-rules#2125)
* Update programmatically-determined-link-context.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update programmatically-determined-link-context.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Create modal-dialog * Rename modal-dialog to modal-dialog.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Apply suggestions from code review Co-authored-by: Dan Tripp <113939352+dan-tripp-siteimprove@users.noreply.github.com> * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update and rename modal-dialog.md to inert.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update spelling-ignore.yml * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update inert.md * Apply suggestions from code review Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> Co-authored-by: Dan Tripp <113939352+dan-tripp-siteimprove@users.noreply.github.com> * Update iframe-not-focusable-has-no-interactive-content-akn7bn.md * Update inert.md * Apply suggestions from code review Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * AGWG Updates (act-rules#2067) * Add (alt="") for clarity on empty alt * Resolve focus visible feedback * Tweak contrast rules * Tweak page title descriptive * Fix tests * Apply suggestions from code review Co-authored-by: Trevor R. Bostic <32486143+tbostic32@users.noreply.github.com> --------- Co-authored-by: Trevor R. Bostic <32486143+tbostic32@users.noreply.github.com> * [cae760] Frame has non-empty accessible name (act-rules#2034) * First pass in response to Feb 16 TF meeting * typo * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Move note about frame to background * Set height for frame * Test wants alphabetical contributors * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Update _rules/iframe-non-empty-accessible-name-cae760.md Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Move note to background --------- Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Updating glossary definition. (act-rules#2069) * Bump yaml and zx (act-rules#2056) * Bump yaml and zx Bumps [yaml](https://github.com/eemeli/yaml) to 2.2.2 and updates ancestor dependency [zx](https://github.com/google/zx). These dependencies need to be updated together. Updates `yaml` from 1.10.2 to 2.2.2 - [Release notes](https://github.com/eemeli/yaml/releases) - [Commits](eemeli/yaml@v1.10.2...v2.2.2) Updates `zx` from 5.3.0 to 7.2.1 - [Release notes](https://github.com/google/zx/releases) - [Commits](google/zx@5.3.0...7.2.1) --- updated-dependencies: - dependency-name: yaml dependency-type: indirect - dependency-name: zx dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> * Trigger CLA? --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * new rule: ARIA required ID references exist (act-rules#2041) * new rule: ARIA required ID references exist * Address review comments Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Apply suggestions from code review Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Apply suggestions from code review Co-authored-by: Tom Brunet <thbrunet@us.ibm.com> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Update _rules/aria-required-id-references-in6db8.md * Apply suggestions from code review Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> --------- Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> Co-authored-by: Tom Brunet <thbrunet@us.ibm.com> * scrollable element: clarify the title (act-rules#2083) * UpdateTableHeaderRule (act-rules#2074) * UpdateTableHeaderRule * Update table-header-cell-has-assigned-cells-d0f69e.md * trigger test * Update _rules/table-header-cell-has-assigned-cells-d0f69e.md Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> --------- Co-authored-by: Wilco Fiers <wilco.fiers@deque.com> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Adds apostrophe to mark the possessive form (act-rules#2080) Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> * Focus visible rule: Fix typo (act-rules#2082) * Contrast rules: Tweak background text (act-rules#2090) * Tweak name / description of Scrollable element keyboard (act-rules#2092) * Deprecate HTML page lang and xml:lang attributes have matching values (act-rules#2086) * Deprecate HTML page lang and xml:lang attributes have matching values * Apply suggestions from code review Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> --------- Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Rephrase Applicability (act-rules#2079) * Rename file (act-rules#2078) * Move secondary requirement texts out of the background (act-rules#2060) * Move secondary requirement texts out of the background * Apply suggestions from code review * fix test * Fix failing test * Secondary reqs on ARIA rules * Update all secondary requirements * Typos * Fix failing tests * Update _rules/link-non-empty-accessible-name-c487ae.md Co-authored-by: Trevor R. Bostic <32486143+tbostic32@users.noreply.github.com> * Tweaked the language some more * Update rule design info for secondary requirements * Fix tests * Apply suggestions from code review Co-authored-by: Kathy Eng <kengdoj@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> --------- Co-authored-by: Trevor R. Bostic <32486143+tbostic32@users.noreply.github.com> Co-authored-by: Kathy Eng <kengdoj@users.noreply.github.com> Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * fix test on secondary requirements (act-rules#2102) * fix test on secondary requirements * More assertions * Update _rules/aria-required-id-references-in6db8.md Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> --------- Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Update dependencies (including act-tools) (act-rules#2103) * fix test-assets not getting built right (act-rules#2104) * Update element-lang-valid-de46e4.md (act-rules#2100) Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * fix the approve-rule action (act-rules#2105) * Remove outdated accsupport note (act-rules#2111) * "Element with lang attribute has valid language tag" [de46e4]: Updated Failed Examples 4 and 5 to reflect Applicability (act-rules#2094) * Update element-lang-valid-de46e4.md Updated Failed examples 4 and 5 to reflect applicability * Apply suggestions from code review Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Update _rules/element-lang-valid-de46e4.md Co-authored-by: Dan Tripp <113939352+dan-tripp-siteimprove@users.noreply.github.com> --------- Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> Co-authored-by: Dan Tripp <113939352+dan-tripp-siteimprove@users.noreply.github.com> Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Text spacing rewrite (act-rules#1923) * Add new letter-spacing rule and deprecate old one * Add new word-spacing rule and deprecate old one * Clean up assumptions * Clean up * Clean up * Add new line-height rule and deprecate old one * Replace old letter spacing version rather than deprecating it * Replace old line height version rather than deprecating it * Replace old word spacing version rather than deprecating it * Target text nodes * Improve background note * Apply suggestion from review * Clean up * Target text nodes rather than their parents * Target text nodes rather than their parents * Add missing reference * Update example * Apply to parent of text nodes, not text nodes * Apply suggestions from code review Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Typos Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Typos --------- Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * "Meta viewport allows for zoom" (b4f0c3): Explicit meaning of 'has' (act-rules#1994) * Explicit meaning of 'has' * Improve expectation and examples * Typo * Improve algorithm description Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Rephrase expectations * Streamline Applicability * Typo * Simplify expectations --------- Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> * Map Empty-heading rule to ARIA instead of WCAG (act-rules#2120) Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> * Deprecate 4.1.1 rules (act-rules#2117) Co-authored-by: Jean-Yves Moyen <jym@siteimprove.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: giacomo-petri <106394951+giacomo-petri@users.noreply.github.com> Co-authored-by: Carlos Duarte <caduarte@campus.ul.pt> Co-authored-by: Dan Tripp <113939352+dan-tripp-siteimprove@users.noreply.github.com> Co-authored-by: Wilco Fiers <WilcoFiers@users.noreply.github.com> Co-authored-by: Trevor R. Bostic <32486143+tbostic32@users.noreply.github.com> Co-authored-by: Tom Brunet <thbrunet@us.ibm.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: HelenBurge <41951878+HelenBurge@users.noreply.github.com> Co-authored-by: Wilco Fiers <wilco.fiers@deque.com> Co-authored-by: Daniel Montalvo <49305434+daniel-montalvo@users.noreply.github.com> Co-authored-by: Kathy Eng <kengdoj@users.noreply.github.com>
1 parent 94f99d6 commit 93ae5bf

3 files changed

Lines changed: 56 additions & 1 deletion

File tree

__tests__/spelling-ignore.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@
205205
- reflow
206206
- Viewport
207207
- dom-meta-content
208+
- showModal
208209

209210
# Unsure why the dictionary does not have these words
210211
- programmatically

_rules/iframe-with-interactive-content-in-tab-order-akn7bn.md

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ acknowledgments:
2828

2929
## Applicability
3030

31-
This rule applies to any `iframe` element that [contains](#akn7bn:contain) at least one element for which all the following are true:
31+
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:
3232

3333
- the element is [visible][]; and
3434
- 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
122122
<iframe tabindex="-1" srcdoc="<a href='/' tabindex='-1'>Home</a>"></iframe>
123123
```
124124

125+
#### Inapplicable Example 5
126+
127+
This `iframe` element is [inert][] because of its own `inert` [attribute value][].
128+
129+
```html
130+
<iframe tabindex="-1" inert srcdoc="<a href='/'>Home</a>"></iframe>
131+
```
132+
133+
#### Inapplicable Example 6
134+
135+
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].
136+
137+
```html
138+
<iframe id="myFrame" title="Links" srcdoc="<a href='/'>Home</a>"></iframe>
139+
<div>
140+
<button id="ppButton" onclick="openDialog()">Privacy policy details</button>
141+
</div>
142+
<dialog id="ppDialog" aria-labelledby="dialogLabel">
143+
<h2 id="dialogLabel">Privacy Policy</h2>
144+
<p>We store no data.</p>
145+
<button id="cancel" onclick="ppDialog.close()">Cancel</button>
146+
</dialog>
147+
<script>
148+
const openDialog = () => {
149+
ppDialog.showModal();
150+
myFrame.tabIndex = '-1'
151+
}
152+
ppDialog.addEventListener('close', () => myFrame.tabIndex = 0)
153+
window.addEventListener('DOMContentLoaded', openDialog);
154+
</script>
155+
```
156+
125157
[attribute value]: #attribute-value 'Definition of Attribute Value'
158+
[blocked by a modal]: https://html.spec.whatwg.org/multipage/interaction.html#blocked-by-a-modal-dialog
126159
[container document]: https://html.spec.whatwg.org/#bc-container-document 'HTML browsing context container document, 2020/12/18'
127160
[document]: https://html.spec.whatwg.org/multipage/dom.html#document 'HTML definition of document'
128161
[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'
162+
[inert]: #inert 'Definition of Inert'
129163
[nested browsing context]: https://html.spec.whatwg.org/#nested-browsing-context 'HTML nested browsing context, 2020/12/18'
130164
[owner document]: https://dom.spec.whatwg.org/#dom-node-ownerdocument 'DOM node owner document property, 2020/12/18'
131165
[sc211]: https://www.w3.org/TR/WCAG21/#keyboard 'WCAG 2.1 Success criterion 2.1.1 Keyboard'

pages/glossary/inert.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
title: Inert
3+
key: inert
4+
unambiguous: true
5+
objective: true
6+
input_aspects:
7+
- Accessibility tree
8+
- CSS styling
9+
- DOM tree
10+
---
11+
12+
An [HTML or SVG element][] is inert if:
13+
- it has an `inert` [attribute value][] of true; or
14+
- one of its ancestor elements in the [flat tree][] has an `inert` [attribute value][] of true; or
15+
- it is [blocked by a modal][].
16+
17+
[HTML or SVG element]: #namespaced-element 'Definition of HTML or SVG element'
18+
[attribute value]: #attribute-value 'Definition of Attribute value'
19+
[blocked by a modal]: https://html.spec.whatwg.org/multipage/interaction.html#blocked-by-a-modal-dialog
20+
[flat tree]: https://drafts.csswg.org/css-scoping/#flat-tree 'Definition of flat tree'

0 commit comments

Comments
 (0)