您的位置:首页 > Web前端 > HTML

Study HTML DOM《document.body.clientHeight》

2014-06-13 09:04 387 查看
一、问题描述

document.body.clientHeight与document.documentElement.clientHeight取值不同。

二、问题再现

有时候需要取页面的底部, 就会用到document.body.clientHeight ,在HTML 标准中(这一句就能取到整个页面的高度,不论body 的实际内容到底有多高,

例如, 1074*768 的分辨率,页面最大化时,这个高度约为720,即使页面上只有一句"hello world" , 也仍然取到720。

可是在XHTML中,如果body 体中只有一行, 则document.body.clientHeight 只能取到那一行的高度约20px,这时如何还想取到整个页面的高度,就要用document.documentElement.clientHeight 来获取了。

三、分析原因

在HTML 中, body 是整个DOM 的根。

在XHTML 中, document 才是根, body 不再是根, 所以取body 的属性时, 不能再取到整个页面的值。

区别新旧标准的行是:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > //指明该页面使用旧标准,

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> //指明该页面使用新标准。

四、总结

XHTML中用 document.documentElement.clientHeight 代替document.body.clientHeight

备注:以上来自 http://www.cnblogs.com/fullhouse/archive/2012/01/05/2313800.html
--------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐