我已经谷歌了一段时间,但仍然找不到原因
$(document).height()
与 $(document.body).height()
不同吗?
还有谁能告诉我高度方法之间的对应关系
在 jQuery 和原始 JavaScript 中?
例如,$(document).height()
相当于document.documentElement.scrollHeight
。
最佳答案
因为<body>
HTML 中的元素只是另一个 block 元素(很像 <div>
),并且与任何 block 元素一样,它可以具有维度样式( margin
、 padding
、 width
、 height
等)。
考虑到这一点, <body>
的“大小”元素不需要直接对应 document
的大小对象(它对应于呈现的整个 HTML 文档)。一个很好的理由是<body>
元素也在 <html>
内元素,它也是 block 元素,并且可以有自己各自的维度。
如果您的<html>
例如,元素有 padding:10px
,然后是你的<body>
元素的有效大小肯定会与整体不同document
完全。
现在,请不要误会我的意思:document
和document.body
可以具有完全相同的大小(例如,尝试检查 StackOverflow),但您必须了解 <body>
只是您可以通过 CSS 操作的另一个 HTML block 。
关于jquery - 为什么 $(document).height() 与 $(document.body).height() 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12955239/