<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>untitled</title>
  <style type="text/css" media="screen">

    #container {
      position: relative;
      height: 100px;
      width: 100px;
      margin: 50px;
      border: 1px solid black;
      -webkit-transform: translateZ(0);
    }
    
    #outer {
      position: absolute;
      left: -25px;
      top: -25px;
      height: 50px;
      width: 50px;
      border: 1px solid blue;
    }
    
    #tester {
      width: 10px;
      height: 10px;
    }
    
  </style>
  <script type="text/javascript" charset="utf-8">
    if (window.testRunner)
      testRunner.waitUntilDone();
    
    function test()
    {
      window.setTimeout(function() {
        document.getElementById('tester').style.outline = '5px solid green';
        if (window.testRunner)
          testRunner.notifyDone();
      }, 0);
    }
    window.addEventListener('load', test, false);
  </script>
</head>
<body>

<p>Adding outline should not affect layer positions</p>
<div id="container">
  <div id="outer"></div>
</div>
<div id="tester">
</div>

</body>
</html>
