| <!doctype html> |
| <title>CSS Container Queries Test: Absolute positioned canvas as dynamic size container for focusable child with display</title> |
| <link rel="help" href="https://drafts.csswg.org/css-contain-3/#size-container"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <style> |
| canvas { |
| display: block; |
| position: absolute; |
| width: 100px; |
| height: 100px; |
| container-type: size; |
| } |
| #target { display: none; } |
| @container (width = 200px) { |
| #target { display: block; } |
| } |
| </style> |
| <p>Test passes if there is a filled green square.</p> |
| <canvas id="canvas"> |
| <div id="target" tabIndex="1"></div> |
| </canvas> |
| <script> |
| test(() => { |
| target.focus(); |
| assert_not_equals(document.activeElement, target); |
| }, "Initially display:none, not focusable"); |
| |
| test(() => { |
| canvas.style.width = "200px"; |
| target.focus(); |
| assert_equals(document.activeElement, target); |
| }, "Focusable after container size change"); |
| </script> |