gecko-dev/testing/web-platform/tests/css/css-multicol/multicol-span-all-dynamic-add-013.html
Ting-Yu Lin 8cb470b2bb Bug 1562701 - Move the reframing logic of <details> element into WipeContainingBlock. r=dbaron
We don't need to treat a details frame as if it has multiple content
insertion points in order to reframe it. We can just put the logic into
WipeContainingBlock().

The reftests layout/reftests/details-summary/dynamic-add-*.html also
cover adding <summary> into a <details> in various situations.

Differential Revision: https://phabricator.services.mozilla.com/D36529

--HG--
extra : moz-landing-system : lando
2019-07-11 05:34:24 +00:00

48 lines
1.5 KiB
HTML

<!DOCTYPE html>
<html class="reftest-wait">
<meta charset="utf-8">
<title>CSS Multi-column Layout Test: Insert a block into a multicol details containing column-span:all</title>
<link rel="author" title="Ting-Yu Lin" href="tlin@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-multicol-1/#column-span">
<link rel="match" href="multicol-span-all-dynamic-add-013-ref.html">
<meta name="assert" content="This test checks that <summary> is still rendered as the first element after inserting a block into multicol <details>, at the place before <summary>.">
<script>
function runTest() {
document.body.offsetHeight;
// Create a div, and insert it as the first child of <details>,
// just before <summary>.
var block1 = document.createElement("div");
var block1Text = document.createTextNode("block1");
block1.appendChild(block1Text);
var details = document.getElementById("details");
details.insertBefore(block1, details.children[0]);
document.documentElement.removeAttribute("class");
}
</script>
<style>
#details {
column-count: 3;
column-rule: 6px solid;
width: 400px;
outline: 1px solid black;
}
h3 {
column-span: all;
outline: 1px solid blue;
}
</style>
<body onload="runTest();">
<details open id="details">
<summary>Summary</summary>
<h3>spanner</h3>
<div>block2</div>
</details>
</body>
</html>