JS学习 - offset家族(一)

先来张图开开胃

  • offsetWidth offetHeight

    • 得到对象的宽度和高度(自己的,与他人无关)
    • offsetWidth = width + border + padding
    • div {width:220px; border-left:2px solid red; padding:10px;} div.offsetWidth = 220 + 2 + 20;
  • offsetLeft offsetTop
    • 返回距离上级盒子(最近的带有定位的盒子)左边的位置
    • 如果父级都没有定位则以body为准 这里的父级指的是所有的上一级,不仅仅指的是父亲级别,还可以是爷爷级别或者更高级别
    • offsetLeft从父级的padding开始算,父亲的border不算 '盒子到定位的父盒子,边框到边框的距离'
  • offsetParent
    • 返回该对象的父级('带有定位的父级,这里的父级包括父亲级别或者更高级别'), 请自觉区别parentNode('返回的是父亲级别')
    • 如果当前元素的父级元素没有进行CSS定位(postion为absolute或relative),offsetParent为body
    • 如果当前元素的父级元素中有CSS定位(postion为absolute或relative),offsetParent取最近的那个父级元素

重点 - offsetWidth,offetHeight,offsetLeft,offsetTop 与 style.width,style.height,style.left,style.top 的区别

这里拿offsetTop 和 style.top作比较

  • 1.最大的区别在于offsetTop可以返回没有定位的盒子距离顶部的位置,而style.top不可以,只要定位的盒子,才有left top right bottom
  • 2.offsetTop返回的是数字,而style.top返回的是字符串,除了数字外还带有单位:px
  • 3.offsetTop 只读,而style.top可读写
    • 如果没有给HTML元素指定过top样式,则style.top返回的是空字符串
    • style.top只能得到行内样式;offsetTop没有限制

最新文章

  1. Magento Connector: Error: Please check for sufficient write file permissions
  2. java 访问mysql 实例
  3. git 教程(3)--时光机穿梭
  4. HL AsySocket 服务开发框架 - 一般性测试1
  5. javascript “||”、“&&”的灵活运用
  6. 【Android开发学习笔记】【高级】【随笔】插件化——Activity生命周期
  7. 3.5 EF Code First总结
  8. Android studio 环境搭建
  9. AlertDialog具体解释
  10. CSS+DIV入门第一天基础视频 CSS选择器层叠性和继承性
  11. 一,ESP8266下载和刷固件
  12. 从0开始做垂直O2O个性化推荐-以58到家美甲为例
  13. 第4章 简单的C程序设计——选择结构程序设计
  14. ArcGIS Construction Tool OnSketchFinished事件不响应
  15. jquery获取浏览器URL参数
  16. 洛谷P4551 最长异或路径
  17. 【HDOJ1531】【差分约束+添加超级源点】
  18. JUC源码阅读参考文章
  19. Rsync数据同步应用指南
  20. selenium WebDriver处理文件下载

热门文章

  1. MySQL -- 在磁盘爆满后复制的状态
  2. uefi+GPT分区安装ubuntu[zz]
  3. JAVA classpath jar问题[zz]
  4. php分享十九:网络带宽预估
  5. springBoot bean注入
  6. Modelsim se仿真Xilinx IPcore
  7. cmd命令操作Oracle数据库
  8. win10下安装redis 服务
  9. 总结: Sort 排序算法
  10. 基于python3在nose测试框架的基础上添加测试数据驱动工具