Offset家族简介

offset这个单词本身是--偏移,补偿,位移的意思。

js中有一套方便的获取元素尺寸的办法就是offset家族;

offsetWidth和offsetHight 以及offsetLeft和offsetTop以及offsetParent

共同组成了offset家族。

offsetWidth和offsetHight (检测盒子自身宽高+padding+border)

这两个属性,他们绑定在了所有的节点元素上。获取之后,只要调用这两个属性,我们就能够获取元素节点的宽和高。

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

offsetWidth = width+padding+border;

offsetHeight = Height+padding+border;

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

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

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

offsetLeft 从父亲的padding 开始算,父亲的border 不算。

在父盒子有定位的情况下,offsetLeft == style.left(去掉px)

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

1、返回改对象的父级 (带有定位)

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

2、如果当前元素的父级元素中有CSS定位 (position为absolute或 relative,fixed), offsetParent取最近的那个父级元素。

offsetLeft和style.left区别

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

2、offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。

3、offsetTop 只读,而 style.top 可读写。(只读是获取值,可写是赋值)

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

offset家族基本简介的更多相关文章

  1. JavaScript动画:offset家族和匀速动画详解(含轮播图的实现)

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. offset家族简介 我们知道,三大家族包括:offset/scroll ...

  2. JS学习 - offset家族(一)

    JS学习 - offset家族(一) 先来张图开开胃 offsetWidth offetHeight 得到对象的宽度和高度(自己的,与他人无关) offsetWidth = width + borde ...

  3. javascript总结46: JS三大系列-方便的offset 家族

    1 offset 家族 offset这个单词本身是--偏移,补偿,位移的意思. js中有一套方便的获取元素尺寸的办法就是offset家族: 2  offset 结构介绍为: 3 offset常用属性 ...

  4. 第52天:offset家族、scroll家族和client家族的区别

    一.offset家族 1.offsetWidth offsetHeight offsetLeft offsetTop offsetParent共同组成了offset家族,用来获取元素尺寸. offse ...

  5. js-BOM之offset家族、移动函数的封装升级(轮播图)

    Obj.style.width/obj.style.height与obj.offsetWidth/obj.offsetHeight的区别: <style> #div1{ height: 2 ...

  6. spring-boot-starter家族成员简介

    应用程序starters 以下应用程序starters是Spring Boot在org.springframework.boot组下提供的: springboot使用指南https://docs.sp ...

  7. offset家族

  8. 三大家族(offset、scroll、client)

    offset.scroll.client三大家族 offset家族 offsetWidth 与 offsetHeight offset 偏移 用于获取元素自身的位置和大小 offsetWidth和of ...

  9. js 三大家族之offset

    JS中的offset家族: 一.offsetWidth与offsetHeight: 获取的是元素的实际宽高 = width + border + padding 注意点: 1.可以获取行内及内嵌的宽高 ...

随机推荐

  1. SecureCRT在Tab下的Title显示IP

    注意:要针对每个Session进行修改才行. 参考: http://www.cnblogs.com/tyhmj/archive/2013/12/20/3483247.html

  2. MongoDB小结11 - update【save】

    save是一个shell函数,调用它,可以在文档不存在时插入,存在时更新,它只有一个参数:文档.如果文档有 _id 这个 键,那么save会调用upsert,否则会调用insert,非常方便.

  3. js 计算获取鼠标相对某个点的移动旋转角度

    // 旋转角度 function getAngle(cen, first, second) { // cen : 中心点 [0,0] // first : 开始点 [1,3] // second : ...

  4. windows下编译jpeg

    项目为了脱离OpenCV,直接采用libjpeg,记录在windows下jpeg安装. 项目地址http://www.ijg.org/ 下载解压缩jpeg-9a 看了看OpenCV中对libjpeg的 ...

  5. mysql设置datetime默认值为now

    mysql设置datetime默认值为now MYSQL-TIMESTAMP数据类型的默认值与自动更新问题 http://blog.csdn.net/scogeek/article/details/5 ...

  6. component and slot

    component and slot 使用: 1.component panel <article class="message"> <div class=&qu ...

  7. Lightoj 1027 - A Dangerous Maze 【期望】

    1027 - A Dangerous Maze PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB Y ...

  8. 【c语言】统计一个数字在排序数组中出现的次数

    // 题目:统计一个数字在排序数组中出现的次数. //  比如:排序数组{1.2,3,3,3,3,4.5}和数字3,因为3出现了4次.因此输出4 有一种最简单的算法,遍历.可是有比它效率更高的 先看遍 ...

  9. Jenkins 使用

    Jenkins 安装 Jenkins是用Java语言开发的系统,首先要确定服务器上已经安装JDK或者JRE. 安装方式一 直接运行java –jar Jenkins.war,在浏览器中输入 http: ...

  10. chosen.jquery.js 搜索框只能从头匹配的解决思路+方法

    chosen.jquery.js 搜索框只能从头匹配的解决思路+方法 心急者请直接看下方 总结 ,由于本问题未能找到直接答案,所以只能通过修改源码解决.故将修改源码思路贴出来供大家参考,在遇到其他改源 ...