为什么 HTML5 中没有脚标签?

Why is there no foot tag in HTML5?

提问人: 提问时间:5/12/2018 最后编辑:unor 更新时间:12/21/2021 访问量:896

问:

我们有一个标签和一个标签。对于标签,我们现在有 、 和 标签。headbodybodyheadermainfooter

为什么没有与 and 标签关联的标签?footheadbody

这个标签非常适合人们将需要加载的 JavaScript 代码放在页面末尾;因为人们经常这样做,但必须将他们的 JS 放在标签中。我的印象是标签中的 JS 代码在技术上不符合规范,因为它实际上并没有提供任何直接对文档正文做出贡献的东西。标签的功能与标签一样有效(实际上不会在文档正文中显示任何内容),但要放在结束标签之后。footbodybodyfootheadbody

是我在这里遗漏了什么,还是没有想到?

Javascript HTML XHTML W3C

评论

0赞 Mr Lister 5/12/2018
你想多了。从技术上讲,正文中的脚本并不超出规范。
0赞 Munim Munna 5/17/2018
不需要脚牌。因为你不一定需要把脚本放在正文里,你可以把它放在脑袋里。如果您需要在加载 html 后运行 JavaScript,请将脚本放在 head 中并使用 DOMContentLoaded 事件。如果你不希望你的脚本在头上延迟html的呈现,只需推迟脚本。问题解决了。

答:

7赞 Alex Dovzhanyn 5/12/2018 #1

由于 HTML 页面通常是自上而下呈现的,因此在页面底部添加标签基本上只是通过语法糖而不是在页面正文底部添加某些内容。

该标签有一个特殊的用途,因为浏览器和爬虫可以只解析这个标签来获取有关网站的元数据,而无需查看完整的 HTML,但该标签没有这样的好处,这意味着它对于浏览器来说将是一个无用的标签来支持,当人们真的可以在正文底部添加他们需要的任何内容以获得所需的效果时。<head><foot>

0赞 Jonathan Dallas 12/17/2021 #2

我实际上可以看到这对浏览器很有用。您可以将脚本标签放在 中,以便浏览器可以对 JS 文件进行预取,然后在加载后执行这些文件,以帮助减少加载时间。footbody

评论

0赞 Tawfik Nasser 12/17/2021
如果要预取脚本,则它们应该在顶部。如果您希望在加载正文后获取它们,请将 scripts 标签放在结束</body>之前。