offset-边距

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29412527/article/details/83748305

三大系列

offset-位移

scroll-卷页

client-可视区

js中有一套方便的获取元素尺寸的办法:offset系列

offset常用属性(5个)

###offsetWidth和offsetHeight————(检测盒子自身宽高+padding+border)

###offsetLeft和offsetTop————(检测距离父盒子有定位的左/上面的距离)

###offsetParent————(检测父系盒子中带有定位的父盒子节点)

offsetwidth和offsetheight

offset宽/高 = 盒子自身的宽/高 + padding +border;

offsetWidth = width+padding+border;

offsetHeight = Height+padding+border;

offsetLeft和offsetTop

offsetLeft:

  • 返回距离上级盒子(带有定位)左边的位置

  • 如果父级都没有定位则以body为准

(从父级的padding开始算,父级的border不算)

###offsetTop和style.top的区别

  1. 最大区别在于offsetLeft可以返回没有定位盒子的距离左侧的位置。 而 style.top不可以

  2. offsetTop返回的是数字(值是四舍五入取整),style.top返回的是字符串(除了数字外还带有单位px)

  3. offsetTop只读,而style.top可读写

  4. style.top只能获取行内式样式。如果没有给 HTML 元素指定过 top 样式,则style.top 返回的是空字符串。

offsetParent

返回该对象的父级

  • 如果当前元素的父级元素没有进行CSS定位(position为absolute或relative,fixed),offsetParent为body。

  • 如果当前元素的父级元素中有CSS定位,offsetParent取最近的那个父级元素

猜你喜欢

转载自blog.csdn.net/qq_29412527/article/details/83748305