解析 offsetWidth、clientWidth

解析 offsetWidth、clientWidth

  • offsetWidth:
    1. 获取元素的宽度。
    2. 包含 内容 + 内边距 + 边框的总宽度。
    3. 当元素是display:none隐藏的时候 就获取的是0。
    4. 如果是图片或其他资源没有加载的时候,并且没有设置宽的时候,获取的大小就是0。
  • clientWidth
    1. 获取元素的宽度。
    2. 包含 内容 + 内边距 。
    3. 行内元素为0。

分别解释 offsetLeft、offsetParent、clientLeft、scrollLeft

1. offsetLeft: 获取一个元素的左边框外侧 到 其包含块的边框内部的距离。
2. offsetParent: 获取元素的最近定位父级。
3. clientLeft: 获取左边框的宽度。
4. scrollLeft: 获取 或者 设置 元素的滚动条的位置。

获取窗口的高度 和 获取文档的高度。

获取窗口的高度:document.documentElement.clientHeight

获取文档的高度:document.documentElement.offsetHeight

获取系统滚动条和设置系统滚动条

  • 获取系统滚动条:

    1. ie6-:
      body的scrollTop

    2. 高版本浏览器(ie7及以上):
      html的scrollTop

    3. 高版本浏览器(ie9及以上)
      window.pageYOffset

  • 设置系统滚动条:

    1. 可以直接对html或body的scrollTop属性直接设置
    2. 也可以使用window.scrollTo(); 完美兼容的
      scrollTo():
      接受两个参数,一个是x滚动条位置 一个是y滚动条位置

谈一谈css包含块

  • 什么是包含块:绝对定位的元素 相对于它的包含块进行定位。
  • 如何确定一个元素的包含块,完全取决于它自身的position属性:
    1. 如果一个元素自身的position属性是 static或者是relative:它的包含块就是离他最近的祖先元素或者是格式化上下文。
    2. 如果一个元素自身的position属性是absolute,它的包含块就是离他最近的 拥有定位属性(值不为static)的元素。
    3. 如果一个元素自身的position属性是fixed,它的包含块就是viewport(视口)。
    4. 如果由内向外找不到包含块条件的元素,那么html(根元素)被称作为初始包含块。

谈一谈浏览器

常见的浏览器有 IE 、火狐(Firefox)、谷歌(Chrome)、Safari和Opera等,我们平时称为五大浏览器。

  1. IE IE是Trident内核。
  2. Firefox(火狐) Gecko内核。
  3. Safari 采用的是WebKit内核。
  4. Chrome(谷歌) Blink内核,Blink其实是Webkit的分支。
  5. Opera Presto内核(已经废弃),目前已经采用Blink。

猜你喜欢

转载自blog.csdn.net/weixin_47021982/article/details/113401215