offsetHeight,clientHeight,innerHeight,outerHeight,scrollHeight区别

  • 元素偏移区域
    • offsetWidth (border + padding+width)
    • offsetHeight (border + padding + height)
    • offsetLeft (元素距离定位父级左内边线的水平距离)
    • offsetTop (元素距离定位父级上内边线的垂直距离)
    • offsetParent (获取元素定位父级,父级加除了position:inherit|initial|static之外的定位属性则会得到该父级,否则一直往上找,直到找到有定位的祖先级或body为止,如果其父级有position:inherit继承并且继承到定位属性,则定位父级也为其父级元素)
      • firefox并没有考虑固定定位的问题,在加了固定定位的元素,火狐返回body,其他浏览器返回null
      • 在查找元素定位父级的时候,当元素的父级有除了static,initial,inherit(特殊情况除外)外的定位,则该元素的定位父级,为该父元素,否则会一直往上找,直到找到有除了以上定位的元素或者找到body停止
  • 可视区域
    • clientHeight (padding + height)不包含滚动条部分,也就是说不包含隐藏的部分
    • clientWidth (padding + width)不包含滚动条部分,也就是说不包含隐藏的部分
    • clientTop (上边框的width)
    • clientLeft (左边框的width)
  • 滚动区域
    • scrollwidth (padding + width)包含水平滚动条部分,也就是内容区域的宽度,包含被隐藏的部分
    • scrollHeight (padding + height)包含垂直滚动条部分,也就是内容区域的高度,包含被隐藏的部分
    • 以上两个属性如果内部有隐藏部分,则它们的值为子元素的margin + padding + border + (width | height)
    • scrollLeft (滚动条滚动的水平距离,默认为0)
    • scrollTop (滚动条滚动的垂直距离,默认为0)
  • 浏览器窗口大小
    • window.innerWidth (浏览器窗口宽度,不包含工具栏,菜单等,仅仅是可视区域dom的width)
    • window.innerHeight (浏览器窗口高度,不包含工具栏,菜单等,仅仅是可视区域dom的height)
    • window.outerWidth (浏览器窗口宽度,包含工具栏、菜单等,整个浏览器的width)
    • window.outerHeight (浏览器窗口高度,包含工具栏、菜单等,整个浏览器的height)
    • IE有兼容问题,可用document.documentElement.clientWidth|clientHeight代替
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • day01­_起源和结构 结构:Xhtml xml 表现:CSS 行为:DOM ECMAScript 以上都属于W...
    Sakura_明妃阅读 4,976评论 0 1
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 5,344评论 0 5
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 9,630评论 0 0
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 5,542评论 0 6
  • 概述 在网易云课堂学习李南江老师的《从零玩转HTML5前端+跨平台开发》时,所整理的笔记。笔记内容为根据个人需求所...
    墨荀阅读 6,934评论 0 7