Status: FAIL | Duration: 13ms | Subtests: 0/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi
/css/css-anchor-position/position-anchor-002.html
<!DOCTYPE html> <title>Tests that 'position-anchor' property value is tree-scoped</title> <link rel="help" href="https://drafts.csswg.org/css-anchor-1/#position-anchor"> <link rel="author" href="mailto:xiaochengh@chromium.org"> <link rel="match" href="position-anchor-ref.html"> <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> <style> .anchor { width: 100px; height: 100px; background: orange; font: 20px/1 Ahem; } .target { position: fixed; background: lime; position-try-fallbacks: --pf; left: 999999px; /* force fallback */ font: 20px/1 Ahem; } @position-try --pf { top: anchor(bottom, 0px); left: anchor(left, 0px); width: anchor-size(width, 0px); height: anchor-size(height, 0px); } body { margin: 0; } #fake-anchor { anchor-name: --a; } #anchor1 { margin-left: 100px; } #anchor2 { margin-left: 300px; margin-top: 100px; } </style> <div id="fake-anchor"></div> <div id="anchor1" class="anchor"> anchor1 <div id="target1" class="target">target1</div> </div> <div id="anchor2" class="anchor"> anchor2 <div id="target2" class="target">target2</div> </div> <script> for (let host of document.querySelectorAll('.anchor')) { let shadow = host.attachShadow({mode: 'open'}); shadow.innerHTML = ` <style> :host { anchor-name: --a; } ::slotted(.target) { position-anchor: --a; } </style> <slot></slot> `; } </script>
/css/css-anchor-position/position-anchor-ref.html
<!DOCTYPE html> <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> <style> .anchor { width: 100px; height: 100px; background: orange; font: 20px/1 Ahem; } .target { position: fixed; background: lime; width: 100px; height: 100px; font: 20px/1 Ahem; } body { margin: 0; } #anchor1 { margin-left: 100px; } #target1 { left: 100px; top: 100px; } #anchor2 { margin-left: 300px; margin-top: 100px; } #target2 { left: 300px; top: 300px; } </style> <div id="anchor1" class="anchor">anchor1</div> <div id="anchor2" class="anchor">anchor2</div> <div id="target1" class="target">target1</div> <div id="target2" class="target">target2</div>