mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-10 13:18:45 +02:00
Automatic update from web-platform-tests [LayoutNG] Add the "simplified" layout pass. This introduces the simplified layout algorithm. This is triggered when - An OOF descendant has its constraints changed. - The block-size of a fragment changes in size. There are several nuanced details with this algorithm. E.g. determining the correct static position for an OOF descendant. Bug: 635619 Change-Id: Iba4c4b82edf873fa4cad9ba28e9fa3849a4a8e8e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1590237 Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org> Reviewed-by: Koji Ishii <kojii@chromium.org> Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Cr-Commit-Position: refs/heads/master@{#659745} -- wp5At-commits: 20b091dca60176b03c6c6cd8466619dd9cf370e2 wpt-pr: 16738
59 lines
1.2 KiB
HTML
59 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html class='reftest-wait'>
|
|
<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
|
|
<link rel="help" href="https://www.w3.org/TR/css-position-3/" />
|
|
<meta name="assert" content="This test checks that a dynamic change in constraints calculates the static position correctly."/>
|
|
<script src="/common/reftest-wait.js"></script>
|
|
<style>
|
|
#container {
|
|
position: relative;
|
|
background: red;
|
|
|
|
box-sizing: border-box;
|
|
border: solid green 10px;
|
|
width: 100px;
|
|
height: 100px;
|
|
}
|
|
|
|
#block {
|
|
background: green;
|
|
height: 40px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
#target {
|
|
position: absolute;
|
|
background: green;
|
|
|
|
width: 80px;
|
|
height: 20px;
|
|
top: -10px;
|
|
left: -10px;
|
|
}
|
|
|
|
#cover {
|
|
position: absolute;
|
|
background: green;
|
|
|
|
width: 80px;
|
|
height: 20px;
|
|
top: 40px;
|
|
left: 0px;
|
|
}
|
|
</style>
|
|
<p>Test passes if there is a filled green square.</p>
|
|
<div id="container">
|
|
<div>
|
|
<div id="block"></div>
|
|
</div>
|
|
<div id="target"></div>
|
|
<div id="cover"></div>
|
|
</div>
|
|
<script>
|
|
document.body.offsetTop;
|
|
const target = document.getElementById('target');
|
|
target.style.top = 'initial';
|
|
target.style.left = 'initial';
|
|
document.body.offsetTop;
|
|
takeScreenshot();
|
|
</script>
|