document.body.clientHeight和 document.documentElement.clientHeight 的区别
1、javascript中的 document.body.clientHeight 和 document.documentElement.clientHeight 的区别
在往同事负责的页面添加我的功能时,页面总是占据屏幕上方很小一部分,我的功能是点击按钮,添加tab页,然后根据浏览器窗口大小调整页面大小。实在是崩溃至极,网上查找资料,才发现就是因为<!DOCTYPE>。
document.body.clientWidth ==> BODY对象宽度
document.body.clientHeight ==> BODY对象高度
document.documentElement.clientWidth ==> 可见区域宽度
document.documentElement.clientHeight ==> 可见区域高度
测试代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1
-transitional.dtd">
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<title> My Test </title>
<script language="JavaScript">
function getHeight(){
document.getElementById("bodyheight").innerText = document.body.clientHeight;
document.getElementById("documentheight").innerText = document.documentElement.clientHeight;
}
</script>
</head>
<body style="border:1px red solid;">
<p>
<a href="javascript:getHeight()">click here</a>
<br/>
document.body.clientHeight = <span id="bodyheight"></span> px
<br/>
document.documentElement.clientHeight = <span id="documentheight"></span> px
</p>
</body>
</html>
IE下测试结果:
当页面上有DOCTYPE的时候,值为
document.body.clientHeight = 87 px
document.documentElement.clientHeight = 935 px
当没有DOCTYPE时
document.body.clientHeight = 935 px
document.documentElement.clientHeight = 935 px
DOCTYPE:
<!DOCTYPE> 声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。HTML5 不基于 SGML,所以不需要引用 DTD。
2、<meta> 元素
<meta name="renderer" content="webkit">
html打开强制为极速模式
<meta http-equiv="X-UA-Compatible" content="IE=edge">
X-UA-Compatible 是针对 IE8 版本的一个特殊文件头标记,用于为 IE8 指定不同的页面渲染模式。Edge 模式通知 Windows Internet Explorer 以最高级别的可用模式显示内容。
<meta http-equiv="X-UA-Compatible" content="IE=7" />无
无论页面是否包含 <!DOCTYPE> 指令,均使用 Windows Internet Explorer 7 的标准渲染模式。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
http-equiv="Content-Type" 表示描述文档类型
content="text/HTML; 文档类型mime类型,这里为html,如果JS就是text/javascript,
charset=utf-8 页面字符集,编码,eg:gb2312,iso-8859-1,utf-8
document.body.clientHeight和 document.documentElement.clientHeight 的区别的更多相关文章
- document.documentElement.clientHeight 与 document.body.clientHeight(杜绝千篇一律的抄袭!!)
document.documentElement.clientHeight 与 document.body.clientHeight用来获取页面可视高度我觉得有点问题.这两个应该不是一个东西. 页面中 ...
- document.documentElement.clientHeight 和 $(window).height() 无法正确获取页面可视区高度
背景: 弹出层插件(自适应) 实现过程中突然发现在获取可视区高度时,无论document.documentElement.clientHeight 还是 $(window).height()都无法正确 ...
- [No000068]document.body.clientHeight 和 document.documentElement.clientHeight 的区别
document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.docume ...
- document.body.clientHeight 和 document.documentElement.clientHeight的区别
document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度document.document ...
- document.documentElement.clientHeight||document.documentElement.scrollHeight
在我看<JavaScript高级程序设计>(第三版)的时候,在clientHeight和scrollHeight那部分把我弄糊涂了. 原书是这样写的:( //宽度同理,就不仔细描述了.) ...
- document.body.clientHeight与document.documentElement.clientHeight
当你的网页有: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...
- document.documentElement.clientHeight和document.body.clientHeight区别
首先了解下document HTML DOM 节点 在 HTML DOM (Document Object Model) 中 , 每一个元素都是 节点: 文档是一个文档节点. 所有的HTML元素都是元 ...
- window.screen.height和window.screen.availHeight和document.body.clientHeight和document.documentElement.clientHeight
说这几个属性前 我说一下我的设备 我的设备有两个,一个高度为1080的显示器,一个高度为800的电脑 第一种:window.screen.height 这个方法是获取用户电脑屏幕的高度,是不关浏览器或 ...
- window.innerHeight和document.documentElement.clientHeight区别
今天有人问我这个问题,做了个小例子来记录一下子. 首先这两个都是获取可视区域的高度,那他们有什么区别呢 1.window.innerHeight属于BOM(浏览器对象模型),而document.doc ...
随机推荐
- iOS 让启动页面延迟的方法
<1> 利用多线程的方法:[NSThread sleepForTimeInterval:300];
- js中return,this,arguments,currentStyle和getComputedStyle小析
一.return返回值:1.函数名+括号:fn()==>return 后面的值2.所有函数默认返回值:未定义3.return后面的任何代码都不会执行二.this:当前对象1.当某个对象后边加事件 ...
- zepto的tap事件的点透问题的几种解决方案
你可能碰到过在页面上创建一个弹出层,弹出层有个关闭的按钮,你点了这个按钮关闭弹出层后,这个按钮正下方的内容也会执行点击事件(或打开链接).这个被定义为这是一个“点透”现象. 以前,我也听到过tap的点 ...
- CSS的class、id、css文件名的常用命名规则
CSS的class.id.css文件名的常用命名规则 (一)常用的CSS命名规则 头:header 内容:content/container 尾:footer ...
- Java.lang.NoSuchFieldError: INSTANCE异常
解决方案: java.lang.NoSuchFieldError: INSTANCE异常. 1.jar包重复了. 2.版本还不相同,如果包的版本不同也会报相应的错,不过一般情况自己导入的jar包主要看 ...
- XML 中对当前时间的引用
current_date 而不是 date 然而,在attrs 和 readonly中并不适用.
- getPos封装
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- eclipse.ini
-startup plugins/org.eclipse.equinox.launcher_1..jar --launcher.library plugins/org.eclipse.equinox. ...
- CentOS 安装
选择选择启动介质 Install or upgrade an existing system: 安装或升级现有的系统 install system with basic video driver: 安 ...
- sql替换指定字段指定字符串
REPLACE ('字段','string','newstring') UPDATE dw_site SET username =REPLACE (username,'凯鋆','韩优')