| <!DOCTYPE html> | 
 | <html> | 
 | <head> | 
 | <style> | 
 | dialog { | 
 |     height: 150px; | 
 |     width: 150px; | 
 | } | 
 |  | 
 | ::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> |