gecko-dev/layout/reftests/pagination/abspos-breaking-dynamic-001-ref.html
L. David Baron 7fd8f7b188 Bug 1365449 - Reflow absolutely positioned children when they need to be repaginated. r=mats
This fixes the failure of
layout/reftests/pagination/dynamic-abspos-overflow-01-cols.xhtml with
the primary patch in bug 1308876.

Since it is an independently testable failure, I'm posting it as a
separate bug.

Without the patch, both reftests fail to rewrap in response to the
dynamic change, and the inner dark blue absolutely positioned element
remains wrapped at the wrong position when the inner light blue
relatively positioned element rewraps.  (I tested this only outside of
the reftest harness, but that should be sufficient.)

I verified manually that the height conditions were correct by modifying
both reftests to add some padding and border to #relpos and margin to
#abspos, changing the height of #abspos so that it was either exactly at
or just above the threshold where reflow was needed, and using
GECKO_DISPLAY_REFLOW_RULES_FILE debugging to verify that the reflow of
the absolutely positioned element did or didn't happen as expected.

MozReview-Commit-ID: 6ISgSEYyMiN

--HG--
extra : transplant_source : %93%86%8Csr_L%83%F2OJ%DC%7F%3D%7D%BC%9C%A6%1F0
2017-05-20 10:15:26 -07:00

42 lines
786 B
HTML

<!DOCTYPE HTML>
<title>Test for dynamic re-pagination of absolutely positioned elements</title>
<link rel="author" title="L. David Baron" href="https://dbaron.org/">
<style>
#multicol {
height: 100px;
width: 300px;
background: yellow;
position: relative;
}
#relpos {
position: absolute;
background: aqua;
height: 100px;
width: 90px;
top: 0;
left: 0;
}
#abspos {
position: absolute;
right: 0;
height: 80px;
width: 50px;
background: blue;
}
</style>
<div id="multicol">
<div id="relpos" style="left: 0">
<div id="abspos" style="top: 80px; height: 20px"></div>
</div>
<div id="relpos" style="left: 105px">
<div id="abspos" style="top: 0px; height: 60px"></div>
</div>
<div id="relpos" style="left: 210px; height: 50px">
</div>
</div>