HTMLElement.clientHeight
只读属性 Element.clientHeight
对于没有定义 CSS 或者内联布局盒子的元素为 0;否则,它是元素内部的高度(以像素为单位),包含内边距,但不包括边框、外边距和水平滚动条(如果存在)。
clientHeight 可以通过 CSS height + CSS padding - 水平滚动条高度(如果存在)来计算。
在根元素( 元素)或怪异模式下的
元素上使用 clientHeight 时,该属性将返回视口高度(不包含任何滚动条)。这是一个 clientHeight 的特例。HTMLElement.offsetHeight
HTMLElement.offsetHeight
是一个只读属性,它返回该元素的像素高度,高度包含该元素的垂直内边距和边框,且是一个整数。
通常,元素的 offsetHeight 是一种元素 CSS 高度的衡量标准,包括元素的边框、内边距和元素的水平滚动条(如果存在且渲染的话),不包含:before 或:after 等伪类元素的高度。
对于文档的 body 对象,它包括代替元素的 CSS 高度线性总含量高。浮动元素的向下延伸内容高度是被忽略的。
如果元素被隐藏(例如 元素或者元素的祖先之一的元素的 style.display 被设置为 none),则返回 0
HTMLElement.scrollHeight
Element.scrollHeight
这个只读属性是一个元素内容高度的度量,包括由于溢出导致的视图中不可见内容。
scrollHeight
的值等于该元素在不使用滚动条的情况下为了适应视口中所用内容所需的最小高度。没有垂直滚动条的情况下,scrollHeight 值与元素视图填充所有内容所需要的最小值clientHeight
相同。包括元素的 padding,但不包括元素的 border 和 margin。scrollHeight
也包括 ::before
和 ::after
这样的伪元素。 如果元素的内容不需要垂直滚动条就可以容纳,则其 scrollHeight
等于{{domref("Element.clientHeight", "clientHeight")}}
HTMLElement.offsetParent
HTMLElement.offsetParent
是一个只读属性,返回一个指向最近的(指包含层级上的最近)包含该元素的定位元素或者最近的 table
, td
, th
, body
元素。当元素的 style.display
设置为 "none" 时,offsetParent
返回 null
。offsetParent
很有用,因为 offsetTop
和 offsetLeft
都是相对于其内边距边界的。
HTMLElement.offsetTop
HTMLElement.offsetTop
为只读属性,它返回当前元素相对于其 offsetParent
元素的顶部内边距的距离。