diff options
Diffstat (limited to 'testing/web-platform/tests/html/editing/the-hidden-attribute/hidden-ua-stylesheet.html')
-rw-r--r-- | testing/web-platform/tests/html/editing/the-hidden-attribute/hidden-ua-stylesheet.html | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/editing/the-hidden-attribute/hidden-ua-stylesheet.html b/testing/web-platform/tests/html/editing/the-hidden-attribute/hidden-ua-stylesheet.html new file mode 100644 index 0000000000..913ecc037c --- /dev/null +++ b/testing/web-platform/tests/html/editing/the-hidden-attribute/hidden-ua-stylesheet.html @@ -0,0 +1,65 @@ +<!DOCTYPE html> +<link rel=author href="mailto:jarhar@chromium.org"> +<link rel=help href="https://html.spec.whatwg.org/multipage/rendering.html#hiddenCSS"> +<link rel=help href="https://github.com/whatwg/html/pull/7475#issuecomment-1069313217"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<div id=div>hello world</div> +<table id=table> + <colgroup id=colgroup> + <col id=col></col> + </colgroup> +</table> + +<script> +function testDisplayNone(description) { + test(() => { + assert_equals(getComputedStyle(div).display, 'none', + `${description} should make the div display:none.`); + assert_equals(getComputedStyle(div).contentVisibility, 'visible', + `${description} should not affect the div's content-visibility property.`); + }, description); +} + +function testCVHidden(description) { + test(() => { + assert_equals(getComputedStyle(div).display, 'block', + `${description} should not affect the div's display property.`); + assert_equals(getComputedStyle(div).contentVisibility, 'hidden', + `${description} should make the div content-visibility:hidden.`); + }, description); +} + +function testNormal(description) { + test(() => { + assert_equals(getComputedStyle(div).display, 'block', + `${description} should not affect the div's display property.`); + assert_equals(getComputedStyle(div).contentVisibility, 'visible', + `${description} should not affect the div's content-visibility property.`); + }, description); +} + +test(() => { + div.removeAttribute('hidden'); + testNormal(`div.removeAttribute('hidden')`); + + div.setAttribute('hidden', ''); + testDisplayNone(`div.setAttribute('hidden', '')`); + + div.setAttribute('hidden', 'asdf'); + testDisplayNone(`div.setAttribute('hidden', 'asdf')`); + + div.setAttribute('hidden', 'until-found'); + testCVHidden(`div.setAttribute('hidden', 'until-found')`); + + div.setAttribute('hidden', 'UNTIL-FOUND'); + testCVHidden(`div.setAttribute('hidden', 'UNTIL-FOUND')`); + + div.setAttribute('hidden', 'UnTiL-FoUnD'); + testCVHidden(`div.setAttribute('hidden', 'UnTiL-FoUnD')`); + + div.setAttribute('hidden', '0'); + testDisplayNone(`div.setAttribute('hidden', '0')`); +}); +</script> |