block-non-replaced-height-015

A relative positioned child elements' offset is ignored for 'height' on a block-level non-replaced elements in normal flow when 'overflow' computes to 'visible'

WeasyPrint

This browser

Assertion
A relative positioned child elements' offset is not considered when sizing the 'height' of a block-level non-replaced element is in normal flow.

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: A relative positioned child elements' offset is ignored for 'height' on a block-level non-replaced elements in normal flow when 'overflow' computes to 'visible'</title>
 5         <link rel="author" title="Microsoft" href="http://www.microsoft.com/">
 6         <link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#normal-block">
 7         <meta name="flags" content="">
 8         <meta name="assert" content="A relative positioned child elements' offset is not considered when sizing the 'height' of a block-level non-replaced element is in normal flow.">
 9         <style type="text/css">
10             #div1
11             {
12                 position: relative;
13             }
14             #div2
15             {
16                 background: blue;
17             }
18             #div2 div
19             {
20                 position: relative;
21                 top: 1in;
22             }
23             #div3
24             {
25                 background: orange;
26                 left: 1in;
27                 position: absolute;
28                 top: 0;
29             }
30             #div2 div, #div3
31             {
32                 height: 1in;
33             }
34             div div
35             {
36                 width: 1in;
37             }
38         </style>
39     </head>
40     <body>
41         <p>Test passes if the blue and orange boxes below are the same height.</p>
42         <div id="div1">
43             <div id="div2">
44                 <div></div>
45             </div>
46             <div id="div3"></div>
47         </div>
48     </body>
49 </html>