blob: d15ca89079e6f37c24a11b2640c7b363478358f8 [file] [log] [blame] [edit]
<!DOCTYPE html>
<link rel="help"
href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing">
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/11044">
<script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script>
<script src="/resources/check-layout-th.js"></script>
<meta name="assert"
content="stretch sizing treating margins as 0 isn't affected by preceding floats">
<style>
.outer {
width: 100px;
height: 100px;
outline: solid;
position: relative;
}
.float {
float: left;
width: 30px;
height: 30px;
background: skyblue;
}
</style>
<p>These tests assert the behavior described at
https://github.com/w3c/csswg-drafts/issues/11044#issuecomment-2599101601
</p>
<div class="outer">
<div class="float"></div>
<div
style="height: stretch; width: 30px; margin-top: 50px; display: flow-root; border: solid magenta;"
data-expected-height="100" data-offset-y="0">
</div>
</div>
<div class="outer">
<div class="float"></div>
<div
style="height: stretch; width: 90px; margin-top: 50px; display: flow-root; border: solid cyan;"
data-expected-height="100" data-offset-y="30">
</div>
</div>
<div class="outer">
<div class="float"></div>
<div
style="height: stretch; width: 90px; margin-top: 50px; border: solid green;"
data-expected-height="100" data-offset-y="0">
</div>
</div>
<div class="outer">
<div class="float"></div>
<div
style="height: stretch; width: 90px; clear: both; margin-top: 50px; border: solid orange;"
data-expected-height="100" data-offset-y="30">
</div>
</div>
<script>checkLayout(".float + div")</script>