offset系列:
- offsetWidth:获取元素的宽
offsetWidth=(border-width)*2+(padding-left)+(width)+(padding-right) - offsetHeight:获取元素的高
offsetHeight=(border-width)*2+(padding-top)+(height)+(padding-bottom) - offsetLeft:获取元素距离左边位置的值
- offsetTop:获取元素距离上面位置的值
备注:offsetLeft和offsetTop:
没有脱离文档流时: 父级元素margin+父级元素padding+父级元素的 border+自己的margin
脱离文档流时: 主要是自己的 left/top 和自己的margin - offsetParent:属性返回父级对象的引用,这个对象是距离调用offsetParent的元素最近的(在包含层次中最靠近的),并且是已进行过CSS定位的容器元素。即
如果当前元素的父级元素没有进行CSS定位(position为absolute或relative),offsetParent为body,如果当前元素的父级元素中有CSS定位(position为absolute或relative),offsetParent取最近的那个父级元素;
如果当前元素的父级元素没有进行CSS定位(position为absolute或relative),offsetParent为body;如果当前元素的父级元素中有CSS定位(position为absolute或relative),offsetParent取最近的那个父级元素。
scroll系列:
- scrollWidth:元素中内容的实际的宽(没有边框),如果没有内容就是元素的宽
- scrollHeight:元素中内容的实际的高(没有边框),如果没有内容就是元素的高
- scrollTop: 向上卷曲出去的距离
- scrollLeft:向左卷曲出去的距离
client系列:
-
clientWidth:可视区域的宽(没有边框),边框内部的宽度
-
clientHeight:可视区域的高(没有边框),边框内部的高度
-
clientLeft:左边边框的宽度
-
clientTop :上面的边框的宽度