|  | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | 
|  | <html xmlns="http://www.w3.org/1999/xhtml"> | 
|  | <head> | 
|  | <!-- | 
|  | This test's original filename was multicol-inherit-004.xht | 
|  | and it has been modified and is now | 
|  | multicol-nested-column-rule-001.xht | 
|  | --> | 
|  | <title>CSS Multi-column Layout Test: nested multi-columns and column-rule position</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-09 --> | 
|  | <link rel="help" href="http://www.w3.org/TR/css3-multicol/#pseudo-algorithm" title="3.4 Pseudo-algorithm" /> | 
|  | <link rel="match" href="multicol-nested-column-rule-001-ref.xht" /> | 
|  | <meta name="flags" content="ahem" /> | 
|  | <meta name="assert" content="This test checks how the height of column boxes conditions the height of column rule." /> | 
|  | <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> | 
|  | <style type="text/css"><![CDATA[ | 
|  | body > div | 
|  | { | 
|  | column-rule: blue solid 1em; | 
|  | font: 1.25em/1 Ahem; | 
|  | width: 26em; | 
|  | } | 
|  |  | 
|  | /* | 
|  |  | 
|  | N == 3; | 
|  |  | 
|  | W == max(0, (available-width - ((N - 1) * column-gap)) / N); | 
|  | W == max(0, (26em - ((3 - 1) * 1em)) / 3); | 
|  | W == max(0, (26em - (2 * 1em)) / 3); | 
|  | W == max(0, (26em - 2em) / 3); | 
|  | W == max(0, 24em / 3); | 
|  | W == max(0, 8em); | 
|  | W == 8em; | 
|  |  | 
|  | So, the first column-rule should be at: | 
|  |  | 
|  | 1.0em : margin-left of outer div | 
|  | 8.0em : width of 1st column box | 
|  | 0.0em : (1.0em / 2) - (1.0em / 2) : left edge of 1st column-rule | 
|  | ========= | 
|  | 9.0em | 
|  |  | 
|  | The 2nd column-rule should be at: | 
|  |  | 
|  | 1.0em : margin-left of outer div | 
|  | 8.0em : width of 1st column box | 
|  | 1.0em : first column-gap | 
|  | 8.0em : width of 2nd column box | 
|  | 0.0em : (1.0em / 2) - (1.0em / 2) : left edge of 2nd column-rule | 
|  | ========= | 
|  | 18.0em | 
|  |  | 
|  | 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: | 
|  |  | 
|  | 8em : width of each outer column box | 
|  | - | 
|  | 2em : horizontal margin of each div inside | 
|  | ======= | 
|  | 6em : width of each inner multi-column elements | 
|  |  | 
|  | N == 3; | 
|  |  | 
|  | W == max(0, (available-width - ((N - 1) * -column-gap)) / N); | 
|  | W == max(0, (6em - ((3 - 1) * 1em)) / 3); | 
|  | W == max(0, (6em - (2 * 1em)) / 3); | 
|  | W == max(0, (6em - 2em) / 3); | 
|  | W == max(0, 4em / 3); | 
|  | W == max(0, 1.33333em); | 
|  | W == 1.33333em; | 
|  |  | 
|  | 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: white; | 
|  | color: white; | 
|  | font-size: 1em; | 
|  | margin: 0em 1em; | 
|  | orphans: 1; | 
|  | widows: 1; | 
|  |  | 
|  | column-count: 3; | 
|  | column-gap: 1em; | 
|  | } | 
|  | ]]></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> |