<!DOCTYPE html>
<!--
 | This test is disabled as a result of an outstanding bug.
 -->
<html>
<head>
  <style>
    .absolute-container {
      position: absolute;
      height: 300px;
      width: 300px;
      background-color: #FF5252;
    }
    .static-inline-block {
      width: 100px;
      height: 50px;
      display: inline-block;
      background-color: #76FF03;
    }
    .absolute-span {
      position: absolute;
      width: 50%;
      height: 50px;
      top: 100px;
      background-color: #03A9F4;
    }
    .thin-width {
      width: 50px;
    }
    .large-width {
      width: 150px;
    }
  </style>
  <script>
    if (window.testRunner) {
      window.testRunner.waitUntilDone();
    }

    window.onload = function() {
      if (window.testRunner) {
        window.testRunner.DoNonMeasuredLayout();
      }

      var node = document.getElementById('node');
      node.className = "static-inline-block thin-width";

      if (window.testRunner) {
        window.testRunner.notifyDone();
      }
    }
  </script>
</head>
<body>
  <div class="absolute-container">
    <span id="node" class="static-inline-block large-width">test</span>
    <span class="absolute-span"></span>
  </div>
</body>
</html>
