diff options
author | Paul Capron <PaulCapron@users.noreply.github.com> | 2020-10-14 23:53:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-14 23:53:11 +0200 |
commit | f5d38e2e05bd54073c2bf8e8210b78b2cf2637d8 (patch) | |
tree | efe42c8dd3eadcb40d3ecea73e4a068c9b91c802 /tests | |
parent | bfffac3fd5e3d5ce43070f9437d43005fc5eaeb2 (diff) | |
download | jquery-ui-f5d38e2e05bd54073c2bf8e8210b78b2cf2637d8.tar.gz jquery-ui-f5d38e2e05bd54073c2bf8e8210b78b2cf2637d8.zip |
Focusable: Fix handling of `visibility: collapse`
"collapse" is similar to "hidden", with a slight difference in the case
of tr/tbody/td/colgroup elements.
See https://www.w3.org/TR/CSS22/visufx.html#visibility
See https://www.w3.org/TR/CSS22/tables.html#dynamic-effects
See https://developer.mozilla.org/en-US/docs/Web/CSS/visibility#Table_example
"visibility: collapse" elements are always not focusable, though.
Commit d3025968f34 introduced a regression by testing with `!== "hidden"`
instead of `=== "visible"`.
Closes gh-1843
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/core/core.html | 8 | ||||
-rw-r--r-- | tests/unit/core/selector.js | 6 |
2 files changed, 13 insertions, 1 deletions
diff --git a/tests/unit/core/core.html b/tests/unit/core/core.html index 31a5bb579..7434a1e1f 100644 --- a/tests/unit/core/core.html +++ b/tests/unit/core/core.html @@ -108,9 +108,17 @@ <span tabindex="1" id="displayNone-span" style="display: none;">.</span> <span tabindex="1" id="visibilityHidden-span" style="visibility: hidden;">.</span> + <span tabindex="1" id="visibilityCollapse-span" style="visibility: collapse;">.</span> <input id="displayNone-input" style="display: none;"> <input id="visibilityHidden-input" style="visibility: hidden;"> + <input id="visibilityCollapse-input" style="visibility: collapse;"> + + <table> + <tr> + <td tabindex="1" id="visibilityCollapse-td" style="visibility: collapse;">.</td> + </tr> + </table> </div> <div> diff --git a/tests/unit/core/selector.js b/tests/unit/core/selector.js index f8b9f20c3..6d867f634 100644 --- a/tests/unit/core/selector.js +++ b/tests/unit/core/selector.js @@ -133,7 +133,7 @@ QUnit.test( "focusable - disabled elements", function( assert ) { } ); QUnit.test( "focusable - hidden styles", function( assert ) { - assert.expect( 12 ); + assert.expect( 15 ); assert.isNotFocusable( "#displayNoneAncestor-input", "input, display: none parent" ); assert.isNotFocusable( "#displayNoneAncestor-span", "span with tabindex, display: none parent" ); @@ -149,9 +149,13 @@ QUnit.test( "focusable - hidden styles", function( assert ) { assert.isNotFocusable( "#displayNone-input", "input, display: none" ); assert.isNotFocusable( "#visibilityHidden-input", "input, visibility: hidden" ); + assert.isNotFocusable( "#visibilityCollapse-input", "input, visibility: collapse" ); assert.isNotFocusable( "#displayNone-span", "span with tabindex, display: none" ); assert.isNotFocusable( "#visibilityHidden-span", "span with tabindex, visibility: hidden" ); + assert.isNotFocusable( "#visibilityCollapse-span", "span with tabindex, visibility: collapse" ); + + assert.isNotFocusable( "#visibilityCollapse-td", "td with tabindex, visibility: collapse" ); } ); QUnit.test( "focusable - natively focusable with various tabindex", function( assert ) { |