mirror of
https://github.com/servo/servo.git
synced 2025-06-23 08:34:42 +01:00
106 lines
No EOL
2.4 KiB
HTML
106 lines
No EOL
2.4 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html>
|
|
<head>
|
|
<title>CSS Multi-column Layout Test: nested multi-columns and constrained dimensions</title>
|
|
<link rel="author" title="Opera Software ASA" href="http://www.opera.com/">
|
|
<link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2013-08-10 -->
|
|
<link rel="help" href="http://www.w3.org/TR/css3-multicol/#pseudo-algorithm" title="3.4 Pseudo-algorithm">
|
|
<link rel="match" href="reference/multicol-nested-005-ref.htm">
|
|
<!--
|
|
The original filename of this test was
|
|
multicol-inherit-005.xht
|
|
This test also serves as a conversion of
|
|
multicol-nested-001.xht
|
|
-->
|
|
<meta name="flags" content="ahem">
|
|
<meta name="assert" content="This test checks how the height of column boxes conditions the height of nested column boxes.">
|
|
<style type="text/css">
|
|
body > div
|
|
{
|
|
column-gap: 1em;
|
|
font: 1.25em/1 Ahem;
|
|
width: 41em;
|
|
}
|
|
|
|
/*
|
|
|
|
N == 3;
|
|
|
|
W == max(0, (available-width - ((N - 1) * column-gap)) / N);
|
|
W == max(0, (41em - ((3 - 1) * 1em)) / 3);
|
|
W == max(0, (41em - (2 * 1em)) / 3);
|
|
W == max(0, (41em - 2em) / 3);
|
|
W == max(0, 39em / 3);
|
|
W == max(0, 13em);
|
|
W == 13em;
|
|
|
|
The height of column rule depends on number of line boxes in
|
|
each outer column box which depends on number of line boxes
|
|
in each inner column box. So:
|
|
|
|
13em : width of each outer column box
|
|
-
|
|
2em : horizontal margin of each div inside
|
|
=======
|
|
11em : width of each inner multi-column elements
|
|
|
|
N == 3;
|
|
|
|
W == max(0, (available-width - ((N - 1) * column-gap)) / N);
|
|
W == max(0, (11em - ((3 - 1) * 1em)) / 3);
|
|
W == max(0, (11em - (2 * 1em)) / 3);
|
|
W == max(0, (11em - 2em) / 3);
|
|
W == max(0, 9em / 3);
|
|
W == max(0, 3em);
|
|
W == 3em;
|
|
|
|
So, each duo of 'a', 'm' and 'x' should fill one and only 1 line
|
|
box. There are 8 duos; therefore, the first 2 inner
|
|
column boxes should use 3 line boxes and the 3rd inner
|
|
column box should be using 2 line boxes.
|
|
|
|
So, the height of the 2 blue column rules should be 60px.
|
|
|
|
*/
|
|
|
|
div
|
|
{
|
|
background-color: yellow;
|
|
color: black;
|
|
font-size: 1em;
|
|
margin: 1em;
|
|
orphans: 1;
|
|
widows: 1;
|
|
|
|
column-count: 3;
|
|
}
|
|
|
|
div > div:first-child {margin-top: 0;}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div>
|
|
<div>
|
|
aa aa
|
|
aa aa
|
|
aa aa
|
|
aa aa
|
|
</div>
|
|
<div>
|
|
mm mm
|
|
mm mm
|
|
mm mm
|
|
mm mm
|
|
</div>
|
|
<div>
|
|
xx xx
|
|
xx xx
|
|
xx xx
|
|
xx xx
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
</html> |