<br /><!doctype html><br /><html><br /> <head><br /> <title>offsetParent bug by 司徒正美</title></p><p> <script src="/javascripts/jquery1.52.js"></script><br /> <script src="/neo/dom.js"></script><br /> <style><br /> .test_table{<br /> width: 80%;<br /> border: 1px solid #B33F3F;<br /> border-collapse: collapse;<br /> }<br /> .test_td{<br /> border: 1px solid #B33F3F;<br /> padding: 5px;<br /> position: relative;<br /> }<br /> .test_div{<br /> position: absolute;<br /> border: 1px solid #00cc00;<br /> height: 20px;<br /> width: auto;<br /> }<br /> </style><br /> <script><br /> window.onload = function(){<br /> alert(document.getElementById("test_div").offsetParent)<br /> }<br /> </script></p><p> </head><br /> <body></p><p> <table class="test_table"><br /> <tbody><br /> <tr></p><p> <td class="test_td"><br /> <div class="test_div" id="test_div">測試offsetParent </div><br /> </td><br /> </tr></p><p> </tbody><br /> </table><br /> </body><br /></html></p><p>
運行代碼
我們對td進行相對定位,它裡面的div進行絕對位置,按理div的offsetParent為td,但FF4中則跑到body元素中去了,這搞到我很痛苦,又得套嵌一層了……
/*opera10.7 tdchrome 10 bodysafari5 bodyFF3.6 Ff4 bodyIE6-IE9 td*/