wpt / css / css-backgrounds / background-size-031.html

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

/css/css-backgrounds/background-size-031.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>CSS Backgrounds and Borders Test: background-size '20% 30%' with background-repeat 'no-repeat round'</title>
    <link rel="author" title="Intel" href="http://www.intel.com">
    <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> <!-- 2012-11-17 -->
    <link rel="help" href="http://www.w3.org/TR/css3-background/#the-background-size" title="3.9. Sizing Images: the 'background-size' property">
    <link rel="help" href="http://www.w3.org/TR/css3-background/#the-background-repeat" title="3.4. Tiling Images: the 'background-repeat' property">
    <link rel="match" href="reference/background-size-031-ref.xht">

    <meta name="flags" content="image">
    <meta name="assert" content="Check if 'background-size' is '20% 30%' and 'background-repeat' is 'no-repeat round', then the height of the corresponding background image is 50px so that it fits a whole number of times (3 in this test) in the background positioning area, and the width of the background image is rescaled to 20% (50px in this test) of the background area.">
    <meta name="fuzzy" content="maxDifference=1; totalPixels=0-948">
    <style>
        #ref-overlapped-red {
            background-color: red;
            height: 150px;
            width: 50px;
        }
        #test-overlapping-square {
            background-image: url(support/100x100-blue-and-orange.png);
            background-repeat: no-repeat round;
            background-size: 20% 30%;
            bottom: 150px;
            height: 150px;
            position: relative;
            width: 250px;
        }
            /*
            Background positioning area is 250px wide by 150px tall.
            The width of the background image is 20% of 250px == 50px.
            The height is rescaled to 30% of 150px == 45px.
            Then, because background-repeat is set to no-repeat round, the
            height is rescaled as following:
            Newest height = 150px / (round [150px / 45px]);
            Newest height = 150px / (round [3.33]);
            Newest height = 150px / (3);
            Newest height = 50px;
            */
    </style>
  </head>
  <body>
    <p>Test passes if there is 1 column of 3 blue-and-orange squares and if there is <strong>no partially</strong> displayed square and <strong>no red</strong>.</p>

    <div id="ref-overlapped-red"></div>
    <div id="test-overlapping-square"></div>
  </body>
</html>

/css/css-backgrounds/reference/background-size-031-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[
  img
  {
  height: 50px;
  vertical-align: top;
  width: 50px;
  }
  ]]></style>

 </head>

 <body>

  <p>Test passes if there is 1 column of 3 blue-and-orange squares and if there is <strong>no partially</strong> displayed square and <strong>no red</strong>.</p>

  <div><img src="../support/100x100-blue-and-orange.png" alt="Image download support must be enabled" /><br /><img src="../support/100x100-blue-and-orange.png" alt="Image download support must be enabled" /><br /><img src="../support/100x100-blue-and-orange.png" alt="Image download support must be enabled" /></div>

 </body>
</html>