今天通过Javascript求元素的offSetLeft的时候,发现无论子元素的直接父元素是不是body,通过offSetParent取得的都是body元素。比如:<html><body id = "body"> <div id = "div1"> <div id = "div2"> <img id = "img" src="./example.png" alt="example"> </div> </div></body></html>通过document.getElementById("img").offSetParent取得的是body元素,为什么会跳过其它的父级元素(div元素)?
1 回答
不负相思意
TA贡献1777条经验 获得超10个赞
因为外层的DIV没有进行定位,你需要使用 absolute或relative进行定位。
html in standards compliant mode; body in quirks rendering mode
当没有定位过的父标签,会根据html文档模式返回不同的标签。
添加回答
举报
0/150
提交
取消