📜  HTML | DOM 位置端口属性(1)

📅  最后修改于: 2023-12-03 15:31:12.821000             🧑  作者: Mango

HTML | DOM 位置端口属性

在前端开发中,很常见需要获取元素的位置和大小信息,而 HTMLDOM 中有一些常用的属性可以帮助我们实现这个目的。

offsetTopoffsetLeft

offsetTopoffsetLeft 属性用于获取元素相对于其定位父元素的位置。它们返回的是相对于元素最近的定位父元素的位置值。

const element = document.getElementById('my-element');
console.log(element.offsetTop); // 元素相对于其定位父元素顶部的距离
console.log(element.offsetLeft); // 元素相对于其定位父元素左侧的距离
clientTopclientLeft

clientTopclientLeft 属性用于获取元素的边框宽度。由于元素的边框可能不止一个像素宽,因此这个值可能会大于 1 像素。

const element = document.getElementById('my-element');
console.log(element.clientTop); // 元素顶部边框的宽度
console.log(element.clientLeft); // 元素左侧边框的宽度
offsetWidthoffsetHeight

offsetWidthoffsetHeight 属性用于获取元素的宽度和高度,包括元素的边框、内边距和滚动条,但不包括外边距。

const element = document.getElementById('my-element');
console.log(element.offsetWidth); // 元素的宽度,包括边框、内边距和滚动条
console.log(element.offsetHeight); // 元素的高度,包括边框、内边距和滚动条
clientWidthclientHeight

clientWidthclientHeight 属性用于获取元素的内部宽度和高度,不包括边框和滚动条。

const element = document.getElementById('my-element');
console.log(element.clientWidth); // 元素的内部宽度,不包括边框和滚动条
console.log(element.clientHeight); // 元素的内部高度,不包括边框和滚动条
scrollHeightscrollWidth

scrollHeightscrollWidth 属性用于获取元素的滚动高度和滚动宽度,包括元素的边框、内边距和被隐藏的部分。当元素没有被隐藏时,scrollHeightscrollWidth 属性的值等于相应的 clientHeightclientWidth 属性的值。

const element = document.getElementById('my-element');
console.log(element.scrollHeight); // 元素的滚动高度,包括边框、内边距和被隐藏的部分
console.log(element.scrollWidth); // 元素的滚动宽度,包括边框、内边距和被隐藏的部分

以上就是 HTMLDOM 中常用的获取元素位置和大小的属性,掌握这些属性可以帮助我们更好地实现网页布局或者开发一些特殊需求的组件。