diff --git a/css/selectors/modal-pseudo-class.html b/css/selectors/modal-pseudo-class.html new file mode 100644 index 000000000000000..a5b198157692952 --- /dev/null +++ b/css/selectors/modal-pseudo-class.html @@ -0,0 +1,34 @@ + +:modal pseudo-class + + + +Just another dialog. + + + + diff --git a/html/semantics/interactive-elements/the-dialog-element/dialog-show-modal.html b/html/semantics/interactive-elements/the-dialog-element/dialog-show-modal.html deleted file mode 100644 index 610e66d20112fd2..000000000000000 --- a/html/semantics/interactive-elements/the-dialog-element/dialog-show-modal.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - -It's my dialog. - - diff --git a/html/semantics/interactive-elements/the-dialog-element/dialog-show-modal-inert-crash.html b/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html similarity index 100% rename from html/semantics/interactive-elements/the-dialog-element/dialog-show-modal-inert-crash.html rename to html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html diff --git a/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html b/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html index 32f308235eb973f..4bd51a508984707 100644 --- a/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html +++ b/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html @@ -62,10 +62,12 @@ test(function(){ assert_false(d1.open); assert_false(d1.hasAttribute("open")); + assert_equals(getComputedStyle(d1).display, "none"); d1.showModal(); this.add_cleanup(function() { d1.close(); }); assert_true(d1.open); assert_equals(d1.getAttribute("open"), ""); + assert_equals(getComputedStyle(d1).display, "block"); assert_equals(document.activeElement, b1); }); @@ -169,4 +171,18 @@ d11.close(); assert_equals(topElement(), d10); }, "when opening multiple dialogs, the most recently opened is rendered on top"); + + test(() => { + assert_false(d11.open); + d11.parentNode.removeChild(d11); + assert_throws_dom("INVALID_STATE_ERR", () => d11.showModal()); + + const doc = document.implementation.createHTMLDocument(); + doc.body.appendChild(d11); + this.add_cleanup(() => document.body.append(d11)); + assert_false(d11.open); + d11.showModal(); + assert_true(d11.open); + this.add_cleanup(() => d11.close()); + }, "Although the document is not attached to any pages, showModal() should execute as normal.");