fune/testing/web-platform/tests/css/css-break/overflowing-block-002-print-ref.html
Ting-Yu Lin 82be885946 Bug 563436 Part 2 - Always override inline-size for overflow container frames. r=dholbert,layout-reviewers
`prevInFlow.ISize(wm)` has subtracted the margin in the inline-axis. If we use
it as the current overflow container continuation's available inline-size, we
might subtract the margin again when computing its auto inline-size [1], which
leads to progressively compressed inline-size as we see in various testcases.
However, fixing `availSpace` is not correct because not all types of frames
compute their inline-sizes using the available inline-size.

This patch generalizes the solution for flex item in bug 1811548, i.e. we always
override inline-size for the current overflow container continuation.

[1] https://searchfox.org/mozilla-central/rev/ff6e63804e6f7b548a26338708663093ce16be11/layout/generic/nsIFrame.cpp#6736-6737

Differential Revision: https://phabricator.services.mozilla.com/D204580
2024-03-14 23:40:49 +00:00

23 lines
673 B
HTML

<!DOCTYPE html>
<meta charset="utf-8">
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-break-3/#parallel-flows">
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=563436">
<link rel="stylesheet" href="/fonts/ahem.css">
<style>
@page { size: 5in 3in; margin: 0.5in; }
body { margin: 0; }
.content {
font: 0.5in/1 Ahem;
color: white;
word-break: break-all;
border: 0.5in solid purple;
margin-right: 2in;
}
</style>
<!-- The content is printed in two pages. -->
<div class="content">XXXXXXXXXXXX</div>