<!DOCTYPE html>
<html>
<!--
 | Absolutely positioned elements in a positioned container should be scrolled.
 |   https://www.w3.org/TR/CSS21/visufx.html
 -->
<head>
  <style>
    body {
      font-family: Roboto;
      font-size: 16px;
    }

    .overflow-scroll {
      width: 150px;
      height: 100px;
      overflow: scroll;
      background-color: #00FF00;
    }

    .container {
      width: 300px;
      height: 75px;
      overflow: hidden;
      position: relative;
      background-color: #FF0000;
    }

    .content {
      width: 50px;
      height: 50px;
      position: absolute;
      background-color: #0000FF;
    }
  </style>
  <script>
    if (window.testRunner) {
      window.testRunner.waitUntilDone();
    }

    window.onload = function() {
      document.getElementById('scroller').scrollLeft = 25;
      if (window.testRunner) {
        window.testRunner.notifyDone();
      }
    }
  </script>
</head>
<body>
  <div id="scroller" class="overflow-scroll">
    <div class="container">
      <div class="content" style="transform: translateX(0px)"></div>
      <div class="content" style="transform: translateX(75px)"></div>
      <div class="content" style="transform: translateX(150px)"></div>
    </div>
  </div>
</body>
</html>
