forked from mirrors/gecko-dev
When we are in CreateColumnSpanSiblings(), there are floats in nsFrameConstructorState::mFloatedList that are waiting to be added to aInitialBlock once we leave scope of the float containing block. However, since we are creating non-column-span continuations, which are continuations of aInitialBlock, we should reparent the floats to these continuations if their placeholders are the descendants of the newly-created continuations. multicol-span-float-002.html exercises nsCSSFrameConstructor::ConstructBlock() and multicol-span-float-003.html exercises nsCSSFrameConstructor::CreateIBSiblings(). Without this patch, multicol-span-float-002.html and multicol-span-float-003.html still pass, but they trigger ``` ASSERTION: nsBlockFrame::CheckFloats: Explicit float list is out of sync with float cache ``` 1524382.html used to trigger the above assertions. Now it's fixed. Differential Revision: https://phabricator.services.mozilla.com/D120105
37 lines
833 B
HTML
37 lines
833 B
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<meta charset="utf-8">
|
|
<title>CSS Multi-column Layout Reference: Test floats in a multi-column container with column-span</title>
|
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
|
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
|
|
<link rel="stylesheet" href="/fonts/ahem.css">
|
|
|
|
<style>
|
|
article {
|
|
width: 300px;
|
|
font: 1.25em/1 Ahem;
|
|
}
|
|
.float-left {
|
|
float: left;
|
|
color: black;
|
|
}
|
|
.float-right {
|
|
float: right;
|
|
color: navy;
|
|
}
|
|
.column-span {
|
|
clear: both;
|
|
color: pink;
|
|
}
|
|
</style>
|
|
|
|
<article>
|
|
<div class="float-left">black</div>
|
|
<div class="float-right">navvy</div>
|
|
|
|
<div class="column-span">Pink</div>
|
|
|
|
<div class="float-left">black</div>
|
|
<div class="float-right">navyy</div>
|
|
</article>
|
|
</html>
|