clientWidth:元素内容可视区宽度(水平方向 width + 左右 padding)。

offsetWidth:元素实际宽度(水平方向 width + 左右 padding + 左右 border-width)。

scrollWidth:元素内容实际宽度,内容不超过盒子宽度时为盒子和 clientWidth相等。

clientLeft:元素 border-left 的 width,也可以视为 ( offsetWidth  - clientWidth ) / 2。

scrollLeft:元素到 offsetParent 左侧距离(不包括父元素的 border 值,如图三)。

offsetParent:距离元素最近的一个具有定位的父级元素(relative,absolute,fixed),如果父级元素都不是定位元素,offsetParent 为浏览器窗口最边边(大部分资料说 body,但如图测试 offsetLeft 却包含 html 的 border-left 宽)。

如图二,火狐浏览器的 offsetLeft 不包含 body 的 border-left 值,其余部分浏览器包含。

clientWidth、offsetWidth、scrollWidth_其他

 

 

clientWidth、offsetWidth、scrollWidth_火狐浏览器_02

 clientWidth、offsetWidth、scrollWidth_父级元素_03