为什么 $(document).height() 与 $(document.body).height() 不同?



我已经在谷歌上搜索了一段时间,但仍然找不到为什么
$(document).height()$(document.body).height()不同?

更重要的是,谁能告诉我jQuery中的高度方法和原始JavaScript方法
之间的对应关系?

例如,$(document).height()等效于document.documentElement.scrollHeight

因为HTML中的<body>元素只是另一个块元素(很像<div>),并且与任何块元素一样,它可以具有维度样式(marginpaddingwidthheight等)。

考虑到这一点,<body>元素的"大小"不需要直接对应于document对象的大小(对应于整个呈现的HTML文档)。一个很好的原因是<body>元素也在<html>元素内部,元素也是一个块元素,并且可以有自己各自的维度。

例如,如果您的<html>元素具有padding:10px,那么您<body>元素的有效大小肯定会与整个document完全不同。

现在,不要误会我的意思:documentdocument.body可以具有完全相同的大小(例如尝试检查StackOverflow),但您必须了解<body>只是您可以通过CSS操作的另一个HTML块。

我认为身体有一个标准的边距。 对于第二部分,我不知道你的意思。

最新更新