关于offsetTop、offsetLeft的小心得,如有错误,敬请指出,共勉,谢谢。
1.当有定位父级时
(1)当前元素有定位时,offsetTop、offsetLeft 指当前元素到最近定位父级的偏移量
(2)当前元素没有定位时,在ie6、ie7下,指到body的偏移量,其他浏览器同上
2.当没有定位父级时,offsetTop、offsetLeft 可以理解为到当前元素的offsetParent的偏移量
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>offsetTop</title> <style> body{ margin: 0; padding: 0; } #div1{ margin: auto; padding: 20px; background: blueviolet; } #div2{ padding: 30px; background: yellow; position: relative; } #div3{ padding: 40px; background: salmon; } </style> <script> window.onload=function () { var div=document.getElementsByTagName(‘div‘); alert(div[2].offsetTop);//div3没有定位时,ie6 ie7 弹出 50,其他浏览器弹出30 } </script> </head> <body id="myBody"> <div id="div1"> <div id="div2"> <div id="div3"></div> </div> </div> </body> </html>
时间: 2024-11-05 11:40:13