有关浏览器窗口宽度高度几个值的解析

1 元素的 offsetWidth 包括border padding  content  整体的宽度。
clientWidth  只包括内容区 padding 不包括border。
clientLeft =  offsetWidth -clientWidth  即这个元素border的值
offsetLeft  若无已定位的包裹元素,则它相对于html元素定位。(跟其他元素比如body有无margin无关)如果有已定位的包含元素,假设这个包含元素还有border 那么它(自己也有border)的定位是从包含元素的边框内侧到本元素的边框外侧,注意,它是包含包含元素的padding与本元素的margin的
对于body而言  假如有滚动条的话,并且它的margin值无,那么它的offsetHeigth=clientHeight
对于html clientHeight为可见区(显示文档的地方)的高度=window.innerHeight(无滚动条时)  有滚动条时window.innerHeight是html clientHeight与滚动条之和   offsetHeight和body的一样

document.body.scrollTop  是文档开始到可见区最上方的距离,它等于0时相当于滚动条未滚动。
为了便于更好理解
document.body.scrollTop+document.documentElement.clientHeight=ocument.body.clientHeight=ocument.body.offsetHeight(body无边框时)

你可能感兴趣的