wpt / css / CSS2 / positioning / dynamic-top-change-004.xht

Status: FAIL | Duration: 11ms | Subtests: 0/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi

/css/CSS2/positioning/dynamic-top-change-004.xht

<!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: Inheriting 'top' changes from abspos parent</title>
  <link rel="author" title="Boris Zbarsky" href="mailto:bzbarsky@mit.edu"/>
  <link rel="reviewer" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact"/>
  <link rel="help" href="http://www.w3.org/TR/CSS21/cascade.html#value-def-inherit"/>
  <link rel="help" href="http://www.w3.org/TR/css-cascade-3/#inherit"/>
  <link rel="help" href="http://www.w3.org/TR/css-cascade-4/#inherit"/>
  <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#position-props"/>
  <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#propdef-position"/>
  <link rel="match" href="dynamic-top-change-002-ref.xht" />

  <meta name="flags" content="dom" />
  <meta name="assert" content="The position of a positioned element which inherits its 'top' value from its parent changes when the parent's 'top' value is changed."/>
  <style type="text/css"><![CDATA[
    p
    {
    line-height: 1.25;
    margin: 1em 0;
    }

    strong {line-height: 1;}

    .testDiv { width: 100px; height: 100px; }
    #green { top: 4em; background: green; position: absolute; }
    #red { top: inherit; background: red; position: relative; }
    #parent { position: absolute; }
  ]]></style>
  <script type="text/javascript"><![CDATA[
    window.onload = function() {
      document.body.offsetWidth;
      document.getElementById("parent").style.top = "2em";
    }
  ]]></script>
 </head>
 <body>
   <p>Test passes if there is <strong>no red</strong>.</p>
   <div id="parent">
     <div id="red" class="testDiv"></div>
   </div>
   <div id="green" class="testDiv"></div>
 </body>
</html>

/css/CSS2/positioning/dynamic-top-change-002-ref.xht

<!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 Reftest Reference</title>

  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />

  <style type="text/css"><![CDATA[
  p
  {
  line-height: 1.25;
  margin: 1em 0;
  }

  strong {line-height: 1;}

  div
  {
  background-color: green;
  height: 100px;
  margin-top: 28px;
  /*
  The green square appears 12px below the p margin box:
  2em + 2em - (16px + 20px + 16px) + 16px
  max(margin-bottom of p, margin-top of div)
  max(16px, margin-top of div) == 16px + 12px;
  therefore, margin-top of div == 16px + 12px
  */
  width: 100px;
  }
  ]]></style>

 </head>

 <body>

  <p>Test passes if there is <strong>no red</strong>.</p>

  <div></div>

 </body>
</html>