scrollHeight,clientHeight,offsetHeight在各个浏览器下的区别
document.body是DOM中Document对象里的body节点, document.documentElement是文档对象根节点(html)的引用。
以下内容在下测试,均为亲测结果~
浏览器版本分别是:IE11、Firefox 53.0.3(64位)、chrome 58.0.3029.110 (64-bit)
测试程序js部分代码:
1.document.documentElement.scrollHeight与document.body.scrollHeight比较
IE浏览器下:
h1=document.documentElement.scrollHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h2=document.body.scrollHeight; //body标签下包括padding在内的样式实际高度,不包括body标签的border,margin;
计算结果:h1=h2+上下border(body的边框)+上下margin(body的内边距);
Firefox浏览器下:
h1= document.documentElement.scrollHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h2=document.body.scrollHeight; //body标签下包括padding在内的样式实际高度,不包括body标签的border,margin;
计算结果: h1=h2+上下border(body的边框)+上下margin(body的内边距);
// Firefox浏览器与IE浏览器两种情况下计算方法均相同,Chrome浏览器的计算方式有点差别
Chrome浏览器下:
h1=document.documentElement.scrollHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h2=document.body.scrollHeight;
计算结果:h1=h2;
2.document.documentElement.clientHeight与document.body.clientHeight比较
IE浏览器下:
h3=document.documentElement.clientHeight; //网页内容可见部分的高度,随着浏览器窗口大小的变化而变化
h4=document.body.clientHeight; //body标签下内容的实际高度,包括body标签的padding,不包括body标签的border,margin,;
Firefox浏览器下:
h3= document.documentElement.clientHeight; //网页内容可见部分的高度,随着浏览器窗口大小的变化而变化
h4=document.body.clientHeight; //body标签下内容的实际高度,包括body标签的padding,不包括body标签的border,margin,;
// Firefox浏览器与IE浏览器两种情况下计算方法均相同,Chrome浏览器的计算方式有点差别
Chrome浏览器下:
h3=document.documentElement.clientHeight; //网页内容可见部分的高度,随着浏览器窗口大小的变化而变化
h4=document.body.clientHeight; //body标签下内容的实际高度,包括body标签的padding,不包括body标签的border,margin,;
3.document.documentElement.offsetHeight与document.body.offsetHeight比较
IE浏览器下:
h5=document.documentElement.offsetHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h6=document.body.offsetHeight; //body标签下内容的实际高度,包括body标签的border,padding,不包括margin;
计算结果:h5=h6+margin(body标签的);
Firefox浏览器下:
h5= document.documentElement.offsetHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h6=document.body.offsetHeight; //body标签下内容的实际高度,包括body标签的border,padding,不包括margin;
计算结果:h5=h6+margin(body标签的);
// Firefox浏览器与IE浏览器两种情况下计算方法均相同,Chrome浏览器的计算方式有点差别
Chrome浏览器下:
h5=document.documentElement.offsetHeight; //html标签下内容的实际高度,包括body标签的border,margin,padding;
h6=document.body.offsetHeight; //body标签下内容的实际高度,包括body标签的border,padding,不包括margin;
计算结果:h5=h6+margin(body标签的);
以上三个浏览器,当body标签的margin为0时,h5=h6;
以上是scrollHeight,clientHeight,offsetHeight在各个浏览器下的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

DeepSeek是一款功能强大的信息检索工具,其优势在于能够深入挖掘信息,但缺点是速度较慢、结果呈现方式较简单且数据库覆盖范围有限,需要根据具体需求权衡其利弊。

DeepSeek是一个专有搜索引擎,仅在特定数据库或系统中搜索,速度更快,准确性更高。使用时,建议用户阅读文档、尝试不同的搜索策略、寻求帮助和反馈使用体验,以便充分利用其优势。

本文详细介绍了芝麻开门交易所(Gate.io)网页版和Gate交易App的注册流程。 无论是网页注册还是App注册,都需要访问官方网站或应用商店下载正版App,然后填写用户名、密码、邮箱和手机号等信息,并完成邮箱或手机验证。

为什么Bybit交易所链接无法直接下载安装?Bybit是一个加密货币交易所,为用户提供交易服务。该交易所的移动应用程序不能直接通过AppStore或GooglePlay下载,原因如下:1.应用商店政策限制苹果公司和谷歌公司对应用商店中允许的应用程序类型有严格的要求。加密货币交易所应用程序通常不符合这些要求,因为它们涉及金融服务,需要遵循特定的法规和安全标准。2.法律法规合规在许多国家/地区,与加密货币交易相关的活动都受到监管或限制。为了遵守这些规定,Bybit应用程序只能通过官方网站或其他授权渠

本文推荐十大值得关注的加密货币交易平台,涵盖币安(Binance)、OKX、Gate.io、BitFlyer、KuCoin、Bybit、Coinbase Pro、Kraken、BYDFi和XBIT去中心化交易所。这些平台在交易币种数量、交易类型、安全性、合规性、特色功能等方面各有千秋,例如币安以其全球最大的交易量和丰富的功能着称,而BitFlyer则凭借其日本金融厅牌照和高安全性吸引亚洲用户。选择合适的平台需要根据自身交易经验、风险承受能力和投资偏好进行综合考量。 希望本文能帮助您找到最适合自

详细介绍芝麻开门交易所网页版登入口操作,含登录步骤、找回密码流程,还针对登录失败、无法打开页面、收不到验证码等常见问题提供解决方法,助你顺利登录平台。

Gate.io 是一个领先的加密货币交易所,提供广泛的加密资产和交易对。注册 Gate.io 非常简单,只需访问其官方网站或下载 app,点击“注册”,填写注册表,验证邮箱,设置双重验证(2FA),即可完成注册。通过 Gate.io,用户可以享受安全、便捷的加密货币交易体验。
