focus

edit

WPT coverage of the tests of focus at the revision 5602b0f210e3. The tests link to their results in the browsers on wpt.fyi. The tentative tests (experimental features) and the reftests are listed separately from the stable tests.

GroupPassingTestsDisabledPass rate
Stable3139079%
Tentative000–
Reftests220100%
All3341080%

Failure reasons

The tests that do not pass (failing or disabled), by kind of reason. A test with several reasons counts once per kind.

  • TEST BUG: 8

Stable tests

TestResultSubtestsKindDescription
activeelement-after-calling-window-focus.sub.htmlPass5 / 5
activeelement-after-focusing-different-site-iframe-contentwindow.htmlPass3 / 3
activeelement-after-focusing-different-site-iframe-then-immediately-focusing-back.htmlPass1 / 1
activeelement-after-focusing-different-site-iframe.htmlPass2 / 2
activeelement-after-focusing-same-site-iframe-contentwindow.htmlPass2 / 2
activeelement-after-focusing-same-site-iframe.htmlPass2 / 2
activeelement-after-immediately-focusing-different-site-iframe-contentwindow.htmlPass1 / 1
activeelement-after-immediately-focusing-different-site-iframe.htmlPass1 / 1
activeelement-after-immediately-focusing-same-site-iframe-contentwindow.htmlPass1 / 1
activeelement-after-immediately-focusing-same-site-iframe.htmlPass1 / 1
activeelement-after-nested-loses-focus.htmlPass1 / 1
ancestor-activeelement-after-child-lose-focus.htmlPass1 / 1
anchor-remove-href.htmlPass1 / 1
cross-origin-ancestor-activeelement-after-child-lose-focus.sub.htmlError1 / 1TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default
focus-already-focused-iframe-deep-different-site.htmlTimeout0 / 0TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default (the test waits for the focus event of the inner window: it times out)
focus-already-focused-iframe-deep-same-site.htmlPass1 / 1
focus-already-focused-iframe-different-site.htmlTimeout0 / 0TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default (the test waits for the focus event of the inner window: it times out)
focus-already-focused-iframe-same-site.htmlPass1 / 1
focus-centers-element.htmlPass1 / 1
focus-contenteditable-element-in-iframe-scroll-into-view.htmlPass1 / 1
focus-double-sync-calls.htmlPass1 / 1
focus-event-after-focusing-iframes.htmlPass2 / 2
focus-event-after-iframe-gets-focus.htmlFail1 / 3TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default (the two subtests whose iframe is cross-site; the same-site subtest passes)
focus-event-after-switching-iframes.sub.htmlPass4 / 4
focus-restoration-in-different-site-iframes-window.htmlFail0 / 1TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default
focus-restoration-in-different-site-iframes.htmlFail0 / 1TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default
focus-restoration-in-same-site-iframes-window.htmlPass1 / 1
focus-sync-when-blur.htmlPass1 / 1
hasfocus-different-site.htmlTimeout0 / 0TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default (the test waits for the focus event of the input of the iframe: it times out)
hasfocus-same-site.htmlPass1 / 1
iframe-activeelement-after-focusing-out-iframes.htmlFail1 / 2TEST BUGthe document of the cross-site iframe calls focus() without user activation: the allow focus steps of HTML deny it (the default allowlist of the focus-without-user-activation policy-controlled feature is 'self', and the iframe has no allow attribute), so the focus does not move; the browsers do not enforce this default (the subtest whose iframe is cross-site; the same-site subtest passes)
iframe-contentwindow-focus-with-different-site-intermediate-frame.htmlPass1 / 1
iframe-contentwindow-focus-with-same-as-top-intermediate-frame.htmlPass1 / 1
iframe-focus-with-different-site-intermediate-frame.htmlPass1 / 1
iframe-focus-with-same-as-top-intermediate-frame.htmlPass1 / 1
iframe-focuses-parent-different-site.htmlPass1 / 1
iframe-focuses-parent-same-site.htmlPass1 / 1
nested-focus-within-iframe-focus-event.htmlPass1 / 1
scroll-matches-focus.htmlPass1 / 1

Reftests

TestResultVariantsKindDescription
focus-large-element-in-overflow-hidden-container.htmlPass1 / 1
focus-visible-element-in-overflow-hidden-container.htmlPass1 / 1