| <!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> |
| |
| <title>CSS Test: Percent height inside anonymous block</title> |
| |
| <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" /> |
| <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#anonymous-block-level" /> |
| <link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#containing-block-details" /> |
| <link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#the-height-property" /> |
| <link rel="match" href="anonymous-boxes-001b-ref.xht" /> |
| |
| <meta content="ahem" name="flags" /> |
| <meta content="Anonymous block boxes are ignored when resolving percentage values that would refer to it: the closest non-anonymous ancestor box is used instead." name="assert" /> |
| |
| <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> |
| <style type="text/css"><![CDATA[ |
| body |
| { |
| font: 1em/1.25 serif; |
| margin: 8px; |
| } |
| |
| p {margin: 1em 0;} |
| |
| strong {line-height: 1;} |
| |
| div#overlapped-red |
| { |
| background-color: red; |
| height: 100px; |
| left: 8px; |
| position: absolute; |
| top: 122px; |
| /* |
| 16px : max(body's margin-top, p's margin-top) |
| + |
| 20px : p's 1st line box height |
| + |
| 20px : p's 2nd line box height |
| + |
| 16px : p's margin-bottom |
| + |
| 50px : div#closest-non-anonymous-ancestor line box height |
| ----------------------------------------------------------- |
| 122px |
| */ |
| right: 8px; |
| z-index: -1; |
| } |
| |
| div#closest-non-anonymous-ancestor |
| { |
| color: white; |
| font: 2.5em/1.25 Ahem; /* equivalent to 40px/50px in absolute units */ |
| height: 200px; |
| } |
| |
| div#child-of-anonymous-block-box |
| { |
| background-color: green; |
| height: 50%; |
| } |
| ]]></style> |
| |
| </head> |
| |
| <body> |
| |
| <p>Test passes if there is a filled green<br /> |
| rectangle across the page and <strong>no red</strong>.</p> |
| |
| <div id="overlapped-red"></div> |
| |
| <div id="closest-non-anonymous-ancestor">Some <div id="child-of-anonymous-block-box"></div> text |
| <p>More text</p> |
| </div> |
| |
| <!-- |
| For example, if the child of the anonymous block box inside the DIV |
| above needs to know the height of its containing block to resolve a |
| percentage height, then it will use the height of the containing |
| block formed by the DIV, not of the anonymous block box. |
| --> |
| |
| </body> |
| </html> |