document.documentElement.clientWidth

获取浏览器窗口文档显示区域的宽度,不包括滚动条。

document.documentElement.clientHeight

获取浏览器窗口文档显示区域的高度,不包括滚动条。

浏览器兼容性

所有浏览器解释都一样。

document.documentElement.offsetWidth

获取DOM文档的根节点html元素对象的宽度,即offsetWidth=width+padding+border,不包括margin。

document.documentElement.offsetHeight

获取DOM文档的根节点html元素对象的高度,即offsetHeight=height+padding+border,不包括margin。

浏览器兼容性

在IE9、10中,offsetWidth和offsetHeight指的是浏览器窗口文档显示区域的宽度和高度,包括滚动条。

在IE8中,offsetWidth和offsetHeight指的是浏览器窗口文档显示区域的宽度和高度,包括滚动条和文档显示区域边缘2px的灰色边框。

在IE7中,offsetWidth和offsetHeight的值等于clientWidth和clientHeight,即不包括滚动条和文档显示区域边缘2px的灰色边框。

document.documentElement.scrollWidth

获取html元素对象内容的实际宽度,即html元素对象的滚动宽度。

document.documentElement.scrollHeight

获取html元素对象内容的实际高度,即html元素对象的滚动高度。

浏览器兼容性

在FireFox、IE8、IE9和IE10中,scrollWidth和scrollHeight指的是整个页面文档的滚动宽度和高度。但是在IE8、9、10中,如果给html元素设置margin,则上下左右都有margin;而在Chrome、Safari、Opera、FireFox中,margin-right和margin-bottom是没有的。所以在IE8、9、10中,如果html元素上下左右都有margin,scrollWidth和scrollHeight的值要大一些。

在IE7中,scrollWidth的值=body的width+body的padding+body的border+body的margin+html的padding+html的border+html的margin-left。同理可得scrollHeight的值。下图中用红框框出了scrollWidth和scrollHeight的范围。左图是上半部分,右图是下半部分。

document.documentElement.clientLeft

获取html元素对象的左边框的宽度。

document.documentElement.clientTop

获取html元素对象的上边框的宽度。

浏览器兼容性

在FireFox中,clientLeft和clientTop的值永远为0。

在IE7中,clientLeft和clientTop的值永远为2。

document.doucmentElement.offsetLeft

获取html元素对象相对于整个页面文档的位置,也就是html元素的margin。

document.documentElement.offsetTop

获取html元素对象相对于整个页面文档的位置,也就是html元素的margin。

浏览器兼容性

在FireFox中,offsetLeft和offsetTop的值就是负的html元素的border-width。

在IE中,offsetLeft和offsetTop的值始终为0。

document.documentElement.scrollLeft

设置或获取页面文档向右滚动过的像素数。

document.documentElement.scrollTop

设置或获取页面文档向下滚动过的像素数。

JS:document.documentElement对象的的更多相关文章

  1. js中document.documentElement 和document.body 以及其属性 clientWidth等

    在设计页面时可能经常会用到固定层的位置,这就需要获取一些html对象的坐标以更灵活的设置目标层的坐标,这里可能就会用到document .body.scrollTop等属性,但是此属性在xhtml标准 ...

  2. 5月15日上课笔记-js中 location对象的属性、document对象、js内置对象、Date事件对象、

    location的属性: host: 返回当前主机名和端口号 定时函数: setTimeout( ) setInterval() 二.document对象 getElementById(); 根据ID ...

  3. js中的document.body.scrollTop与document.documentElement.scrollTop

    获取当前页面滚动条纵坐标的位置:document.body.scrollTop与document.documentElement.scrollTop获取当前页面滚动条横坐标的位置:document.b ...

  4. (转)JS获取当前对象大小以及屏幕分辨率等

    原文 JS获取当前对象大小以及屏幕分辨率等   <script type="text/javascript">function getInfo(){       var ...

  5. JS获取当前对象大小以及屏幕分辨率等...

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <meta nam ...

  6. document.body.clientHeight和 document.documentElement.clientHeight 的区别

    1.javascript中的 document.body.clientHeight 和 document.documentElement.clientHeight 的区别 在往同事负责的页面添加我的功 ...

  7. 【Javascript Demo】JS获取当前对象大小以及屏幕分辨率等

    效果如下: 代码如下: <html> <head> <title>获取当前对象大小以及屏幕分辨率等</title> <body> <d ...

  8. JS 之DOM对象(1)

    介绍DOM1中底层的一些属性和方法. 节点操作 appendChild() parentNode.appendChild(newNode)  在parentNode节点的最后插入newNode ins ...

  9. document.body、document.documentElement和window获取视窗大小的区别

    来源:http://www.ido321.com/906.html 在w3school关于window对象的介绍中,介绍了获取浏览器窗口大小的三种方法(浏览器的视口,不包括工具栏和滚动条). 对于In ...

随机推荐

  1. 写爬虫爬了3w条职位数据,看看当前招聘形势 | 开源

    最近有不少程序员又开始找工作了,为了了解目前技术类各职位的数量.薪资.招聘公司.岗位职责及要求,我爬取了拉勾网北上广深4个城市的招聘数据,共3w条.职位包括:人工智能(AI).大数据.数据分析.后端( ...

  2. TPYBoard v202开发板通过I2C协议驱动oled

    最近无聊的时候研究了一下TPYBoard v202开发板,发现网上TPYBoard开发驱动oled的这块资料比较少,本人测试成功后给大家分享一下经验 下面通过代码讲解一下 1.首先需要导包, 在网上下 ...

  3. java新时间类

    时间 java8以前使用的时间很多方法都已经废弃了,而且不是线程安全的,java8提供了一系列的时间类,这些时间类都是线程安全的 LocalDate.LocalTime.LocalDateTime 这 ...

  4. coding++:Spring Boot全局事务解释及使用(一)

    Spring 事务的入口: TxAdviceBeanDefinitionParser 解释 <tx:advice/> 这里将解析tx的配置. @Override protected Cla ...

  5. Q - 迷宫问题 POJ - 3984(BFS / DFS + 记录路径)

    Q - 迷宫问题 POJ - 3984 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, ...

  6. 2019NYIST计科第四次周赛

    YZJ的牛肉干 Description 今年的ACM暑期集训队一共有18人,分为6支队伍.其中有一个叫做 YZJ的大佬,在共同的集训生活中,大家建立了深厚的友谊, YZJ准备做点什么来纪念这段激情燃烧 ...

  7. VUE一款适用于pc平台的简单toast

    新项目要求用typescript+vue+elementui的模式来搭建pc项目,最初踩了好多坑.产品说提示不想用element-ui的提示. 打算用toast的形式.所以就自己写了一个pc的toas ...

  8. C++头文件中的模板类

    C++头文件中的模板类 这已经是我的第三篇关于头文件的博客了,没想到我还是踩了个巨坑. 大家都知道要在头文件里声明类成员,在源文件中实现. 但是今天写数据结构作业,在头文件(Stack.h)定义了一个 ...

  9. Linux利器:使用 gcc 编程C程序

    文章更新于:2020-03-23 文章目录 一.手动编译链接单个C源文件 1.创建C源文件 2.编译源文件 3.生成可执行文件 二.手动编译链接多个C源文件 1.创建两个C源文件 2.编译两个源文件 ...

  10. C#多线程系列(1):Thread

    目录 1,获取当前线程信息 2,管理线程状态 2.1 启动与参数传递 2.1.1 ParameterizedThreadStart 2.1.2 使用静态变量或类成员变量 2.1.3 委托与Lambda ...