block-non-replaced-height-016

A relative positioned child elements' offset is ignored for 'height' on a block-level non-replaced elements in normal flow when 'overflow' does not compute 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' does not compute 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             html, body
11             {
12                 overflow: scroll;
13             }
14             #div1
15             {
16                 position: relative;
17             }
18             #div2
19             {
20                 background: blue;
21             }
22             #div2 div
23             {
24                 position: relative;
25                 top: 1in;
26             }
27             #div3
28             {
29                 background: orange;
30                 left: 1in;
31                 position: absolute;
32                 top: 0;
33             }
34             #div2 div, #div3
35             {
36                 height: 1in;
37             }
38             div div
39             {
40                 width: 1in;
41             }
42         </style>
43     </head>
44     <body>
45         <p>Test passes if the blue and orange boxes below are the same height.</p>
46         <div id="div1">
47             <div id="div2">
48                 <div></div>
49             </div>
50             <div id="div3"></div>
51         </div>
52     </body>
53 </html>