margin-collapse-025

Margin collapsing - in-flow block-level margins with an element 'height' of 'auto' and 'max-height' and 'min-height'

WeasyPrint

This browser

Flags
ahem, image
Assertion
The bottom margin of an in-flow block-level element(#div2) with a 'height' of 'auto' will adjoin to its last in-flow block-level child's (#div3) bottom margin if such auto-height in-flow block-level element has no bottom padding and no bottom border. The bottom margins will then collapse.

Source

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 2 <html>
 3     <head>
 4         <title>CSS Test: Margin collapsing - in-flow block-level margins with an element 'height' of 'auto' and 'max-height' and 'min-height'</title>
 5         <link rel="author" title="Microsoft" href="http://www.microsoft.com/">
 6         <link rel="help" href="http://www.w3.org/TR/CSS21/box.html#collapsing-margins">
 7         <meta name="flags" content="ahem image">
 8         <meta name="assert" content="The bottom margin of an in-flow block-level element(#div2) with a 'height' of 'auto' will adjoin to its last in-flow block-level child's (#div3) bottom margin if such auto-height in-flow block-level element has no bottom padding and no bottom border. The bottom margins will then collapse.">
 9         <style type="text/css">
10             div
11             {
12                 font: 20px/1em Ahem;
13                 width: 5em;
14             }
15             #div1
16             {
17                 background: url('support/margin-collapse-2em-space.png') 0 0;
18                 height: 4em;
19             }
20             #div2
21             {
22                 background: red;
23                 height: auto;
24                 min-height: 0.5em;
25                 max-height: 2em;
26             }
27             #div3, #div4
28             {
29                 background: green;
30                 height: 1em;
31             }
32             #div2, #div3
33             {
34                 margin-bottom: 2em;
35             }
36         </style>
37     </head>
38     <body>
39         <p>Test passes if there is no red visible on the page.</p>
40         <div id="div1">
41             <div id="div2">
42                 <div id="div3"></div>
43             </div>
44             <div id="div4"></div>
45         </div>
46     </body>
47 </html>