width\height\top\left辨析

笔者最近在重构组件库的时候,学习大佬们的代码,表示很迷茫,主要是感觉这个XXHeight才在这里见到,然后又出现了另一个XXHeight。感觉有点混淆,所以简单的辨析一下这个几个Height和Width顺便再辨析一下Top和Left。

offset client scroll
offsetWidth clientWidth scrollWidth
offsetHeight clientHeight scrollHeight
offsetLeft clientLeft scrollLeft
offsetTop clientTop scrollTop

Offset相关

  • offsetTop:子元素距离已定位的父容器的上边距离,不包括子元素与父元素的border
  • offsetLeft:子元素距离已定位的父容器的左边距离,不包括子元素与父元素的border
  • offsetWidth:元素外尺寸的宽度,是元素内容宽度+内边距+边框,不包括外边距与滚动条
  • offsetHeight:元素外尺寸的高度,是元素内容高度+内边距边框,不包括外边距与滚动条。

Client相关

  • clientTop:元素的内边距外边缘和边框外边缘的距离,实际就是上边框的厚度。
  • clientLeft:元素的内边距外边缘和边框外边缘的距离,实际上是左边框的厚度。
  • clientWidth:元素尺寸宽度,仅仅表示元素内容宽度,包括内边距,不包括边框。
  • clientHeight:元素尺寸高度,仅仅表示元素内容高度,包括内边距,不包括边框。

Scroll相关

  • scrollTop:元素滚动条上边已经滚动的高度
  • scrollLeft:元素滚动条左边已经滚动的乱度
  • scrollWidth:内容区域加内边距加上溢出的尺寸
  • scrollHeight:内容区域加内边距加上溢出的尺寸
-------------本文结束感谢您的阅读-------------