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. OpenCV-Python 对极几何 | 五十一

    目标 在本节中 我们将学习多视图几何的基础知识 我们将了解什么是极点,极线,极线约束等. 基础概念 当我们使用针孔相机拍摄图像时,我们失去了重要信息,即图像深度. 或者图像中的每个点距相机多远,因为它 ...

  2. 使用TensorFlow v2张量的一个简单的“hello world”示例

    使用TensorFlow v2张量的一个简单的"hello world"示例 import tensorflow as tf # 创建一个张量 hello = tf.constan ...

  3. JavaScript之onclick事件

    对于给同一个元素添加两个点击事件时,其中一个是通过js获取元素添加点击事件另一个是通过内联的方法为元素添加事件. 执行之后只会执行通过元素获取的点击事件.而内联式的添加点击事件是不会执行的 还有一个就 ...

  4. 计算机视觉基本原理——RANSAC

    公众号[视觉IMAX]第31篇原创文章 一 前言 对于上一篇文章——一分钟详解「本质矩阵」推导过程中,如何稳健地估计本质矩阵或者基本矩阵呢?正是这篇文章重点介绍的内容. 基本矩阵求解方法主要有: 1) ...

  5. python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度

    一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...

  6. 渗透测试之Web安全

    写在前面: 渗透测试包含但不限于Web安全 渗透测试并不相当于Web渗透 Web安全学习是入门渗透测试最容易的途径,门槛最低 Web安全入门: 基础入门 整体框架 SQL注入 XSS攻击 业务逻辑漏洞 ...

  7. Ubuntu添加新用户并给普通用户赋予root新权限

    添加新用户 首先用adduser命令添加普通用户: #adduser newusername 只有在root权限才可以添加新用户 修改密码: #passwd username 赋予root权限 方法1 ...

  8. captcha-killer burp验证码识别插件体验

    0x01 使用背景 在渗透测试和src挖洞碰到验证码不可绕过时,就会需要对存在验证码的登录表单进行爆破,以前一直使用PKav HTTP Fuzzer和伏羲验证码识别来爆破,但是两者都有缺点PKav H ...

  9. SpringBoot 入门:项目属性配置

    开发一个SpringBoot 项目,首当其冲,必然是配置项目 一.项目属性配置 1. SpringBoot自带了Tomcat服务器,通过使用项目配置文件来修改项目的配置,如图配置了部署在80端口,目录 ...

  10. 【PHP】流程控制

    一.      顺序结构 a)    PHP的脚本从上到下,从左往右的执行顺序就是顺序结构! 二.      分支结构 a)    单一的分支结构 If ( 条件表达式 ) { 程序体: } 执行过程 ...