← back to v145 · light-dismiss-improvements-for-popovers-and-dialogs

conformance · v145

v145 · light-dismiss-improvements-for-popovers-and-dialogs — conformance probe

8 assertions drawn from the spec. Each is a single contract the spec text makes. Pass/fail reflects what this browser executed; blocked means the contract was not run because it needs user mediation, hardware, or another unavailable precondition. Open the page in Chrome stable / canary / Firefox / Safari to compare.

browser: spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#attr-dialog-closedby chromestatus: #6209615938322432 generated 2026-08-28T00:00:00Z by claude-opus-5-v145-build
0
pass
0
fail
0
blocked
8
total
id contract kind verdict detail
popover-attribute-is-supported The overlay type light dismiss applies to by default. spec ↗ script
dialog-exposes-closedby The attribute that lets a dialog choose light dismiss, close requests, both or neither. spec ↗ script
closedby-keywords-resolve-case-insensitively An enumerated attribute matches keywords ASCII case-insensitively, so ANY is any — and an unrecognised keyword must not be passed through. spec ↗ script
the-missing-value-default-depends-on-modality The detail worth measuring: with no attribute, a dialog opened with showModal() reports closerequest and the same element opened with show() reports none. A single default would make one of the two behaviours unreachable without opting in. spec ↗ script
an-invalid-closedby-does-not-become-any A typo must not make a dialog easier to dismiss. Whatever the invalid-value default resolves to, it must not be 'any' — that would turn a mistyped attribute into a dialog that vanishes on the next click, losing whatever the user was doing. spec ↗ script
untrusted-input-does-not-light-dismiss Light dismiss must respond to real input only. If a dispatched pointerdown/pointerup/click sequence closed an open popover, any script on the page could dismiss another script's overlay — and every automated check of this behaviour would be measuring itself rather than the browser. spec ↗ script
popover-invalid-value-default-is-manual The neighbouring attribute resolves a typo to manual — an overlay that stays until told otherwise. Both attributes choose the option that does not disappear unexpectedly, which is the principle behind the light dismiss change itself. spec ↗ script
close-watcher-backs-the-close-request Escape reaching a dialog or popover is a close request, and CloseWatcher is the primitive the platform uses for it. Its presence is what makes closedby="closerequest" a coherent option rather than a special case for one element. spec ↗ typeof