<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -749,8 +749,13 @@
     Element.addMethods({
       viewportOffset: function(element) {
         element = $(element);
-        var rect = element.getBoundingClientRect();
-        return new Element.Offset(rect.left, rect.top);
+        var rect  = element.getBoundingClientRect(),
+            docEl = document.documentElement,
+            // The HTML element on IE &lt; 8 has a 2px border by default, giving
+            // an incorrect offset, we correct this by subtracting clientTop/Left
+            top  = rect.top - docEl.clientTop,
+            left = rect.left - docEl.clientLeft;
+        return new Element.Offset(left, top);
       },
       
       cumulativeOffset: function(element) {</diff>
      <filename>src/dom/layout.js</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>093c0cce4bbb89b88b0af20356faa83906b3aafa</id>
    </parent>
  </parents>
  <author>
    <name>Nick Stakenburg</name>
    <email>nick@nickstakenburg.com</email>
  </author>
  <url>http://github.com/staaky/prototype/commit/3afb0002cbd31726187338c5119657b76111f80c</url>
  <id>3afb0002cbd31726187338c5119657b76111f80c</id>
  <committed-date>2009-11-03T11:47:13-08:00</committed-date>
  <authored-date>2009-11-03T11:47:13-08:00</authored-date>
  <message>Fix incorrect offset in Element.viewportOffset on IE &lt; 8.</message>
  <tree>236d468ed273b51d58da306e52c9728af6c0f229</tree>
  <committer>
    <name>Nick Stakenburg</name>
    <email>nick@nickstakenburg.com</email>
  </committer>
</commit>
