wpt / css / css-position / sticky / position-sticky-stacking-context-002.html

Status: PASS | Duration: 8ms | Subtests: 1/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi

/css/css-position/sticky/position-sticky-stacking-context-002.html

<!DOCTYPE html>

  <meta charset="UTF-8">

  <title>CSS Positioned Layout Test: an element with 'position: sticky' creates a stacking context</title>

  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
  <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
  <link rel="help" href="https://www.w3.org/TR/css-position-3/#sticky-pos">

  <meta name="assert" content="This test checks that an element with 'position: sticky' creates a stacking context. In this test, the first 2 divs have the same 'auto' z-index value but since div#sticky is last in document tree order, then it must overlap div#overlapped-red. The final div#overlap-bottom-half-of-sticky exists to make sure that the div#sticky is squeezed, is 'sandwiched' between the other 2.">

  <style>
  div
    {
      height: 100px;
      width: 100px;
    }

  div#overlapped-red
    {
      background-color: red;
      position: absolute;
    }

  div#sticky
    {
      background: linear-gradient(to bottom, green 51%, red 49%);
      position: sticky;
    }

  div#overlap-bottom-half-of-sticky
    {
      background-color: green;
      bottom: 50px;
      height: 50px;
      position: relative;
    }
  </style>

  <p>Test passes if there is a filled green square and <strong>no red</strong>.

  <div id="overlapped-red"></div>

  <div id="sticky"></div>

  <div id="overlap-bottom-half-of-sticky"></div>

/css/reference/ref-filled-green-100px-square.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[
  div
  {
  background-color: green;
  height: 100px;
  width: 100px;
  }
  ]]></style>
 </head>
 <body>
  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
  <div></div>
 </body>
</html>