为了账号安全,请及时绑定邮箱和手机立即绑定

DOM 尺寸和位置

标签:
Html/CSS

我们经常在页面中,对 DOM 进行一些复杂的操作和计算中会对元素的尺寸和位置做计算,要想对元素的尺寸和位置很好的控制我们必须了解以下知识:

  • clientWidth & clientHeight

  • clientLeft & clientTop

  • offsetWidth & offsetHeight

  • offsetLeft & offsetTop

  • offsetParent

  • scrollWidth & scrollHeight

  • scrollLeft & scrollTop

  • getBoundingClientRect()

clientWidth & clientHeight

它们分别表示 DOM 的宽度和高度即元素的内容+内边距的大小,不包含 border 和 margin:

clientLeft & clientTop

它们表示 DOM 内边距到边框外边缘之间的水平和垂直距离,也就是左、上边框宽度:

offsetWidth & offsetHeight

它们表示 DOM 的内容+内边距+边框的大小,不包含 margin:

offsetLeft & offsetTop

它们表示 DOM 边框外边缘与已定为父容器对象的距离:

offsetParent

它表示该元素最近的定位祖先元素,递归上溯,如果没有的话则返回 null:

webp

dom-client-offset.png

scrollWidth & scrollHeight

它们表示元素的内容区域+内边距+溢出的尺寸,当内容整好喝内容区域没有溢出时,它们与 clientWidth & clientHeight 相等:

scrollLeft & scrollTop

它们表示内容溢出的水平左边和垂直顶部的距离,也就是滚动条水平和垂直拖动的距离:

webp

dom-scroll.png

getBoundingClientRect()

它会返回一个有 left、right、top、bottom、height、width 属性的对象,分别表示元素四个位置相对于窗口的坐标(注意:它们都是给予浏览器的左上边缘),其中返回的 height 和 width 包含内边距和边框:

webp

dom-clientrect.png





点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
12
获赞与收藏
135

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消