diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html new file mode 100644 index 0000000000..ba790c1db9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html @@ -0,0 +1,60 @@ +<!DOCTYPE html> +<html> +<head> +<link rel="match" href="top-layer-display-none-ref.html"> +<link rel="help" href="https://fullscreen.spec.whatwg.org/#new-stacking-layer"> +<style> +dialog { + height: 150px; + width: 150px; + outline: none; +} + +::backdrop { + display: none; +} + +.red { + background-color: red; + top: 200px; +} + +#bottomDialog { + background-color: blue; + top: 50px; + display: none; +} + +#topDialog { + background-color: green; + top: 100px; + left: 50px; +} +</style> +</head> +<body> +This tests that a top layer element is not rendered if it, or an ancestor, has display: none. +It passes if you see a green rectangle stacked on top of a blue rectangle, and see no red rectangles. + +<dialog id="hiddenDialog" class="red" style="display: none;"></dialog> +<div id="container"> + <div> + <dialog id="displayNoneChild1" class="red"></dialog> + <dialog id="displayNoneChild2" class="red"></dialog> + </div> +</div> +<dialog id="bottomDialog"></dialog> +<dialog id="topDialog"></dialog> +<script> +document.getElementById('hiddenDialog').showModal(); +document.getElementById('displayNoneChild1').showModal(); +document.getElementById('container').style.display = 'none'; +document.getElementById('displayNoneChild2').showModal(); + +// Test that stacking works even if an element is added to the top layer when it has no renderer. +document.getElementById('bottomDialog').showModal(); +document.getElementById('topDialog').showModal(); +document.getElementById('bottomDialog').style.display = 'block'; +</script> +</body> +</html> |