假设 obj 为某个 HTML 控件。
obj.offsetTop 指 obj 距离上方或上层控件的位置,整型,单位像素。
obj.offsetLeft 指 obj 距离左方或上层控件的位置,整型,单位像素。
obj.offsetWidth 指 obj 控件自身的宽度,整型,单位像素。
obj.offsetHeight 指 obj 控件自身的高度,整型,单位像素。
如下是html
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
* {
padding:0px;
margin:0px;
}
div {
padding:5px;
}
h1,p{
border:1px solid red;
}
</style>
</head>
<body>
<div>
<h1>关于offset width height left top 的用法</h1>
<p>offset width ,height,left ,top 的用法详解</p>
</div>
</body>
</html>
在firebug 下面控制台。运行如下程序:
var p = $$('p')[0];
var h1= $$('h1')[0];
var a = h1.offsetTop; //5
var c = h1.offsetHeight; //
console.log(a);
console.log(a+c);
var b = p.offsetTop;
console.log(b);
可以看到 h1 的offsetTop + h1 的offsetHeight 之和即为 p的offsetTop
同时 由于不包含边距故上面登时是成立的。如果包含边距则不成立。