<audio> 标签应该放在 <head> 标签中吗?

Should <audio> tags go in the <head> tag?

音频标签应该HTML5放在head标签里,还是放在body标签里?

head 标签内的内容不会呈现,因此请将其放在 body 标签内。

还要记得指定 controls 属性,否则什么也不会显示:

<audio controls></audio>

不过,在 HTML5 中 body 标签也不是严格需要的,并且 HTML5 支持完全删除 body (实际上,只有 doctype,即. <!DOCTYPE html> 和标题(在大多数情况下)是必需的)。但是,如果您使用 body 标签,那就是它所属的位置。

我认为接受的答案有点假设,即开发人员想要显示音频元素控件,而不是仅在例如单击页面上的另一个元素时播放声音。此外,对这个好问题的评论没有帮助,显然 Google 比 post 在 Stack Overflow 上提问并等待答案更容易;在这种特殊情况下,如果您在 head 标签中为 Audio 元素 Google ,您将什么也找不到,甚至在 W3C 或 WHATWG 上也找不到。

如果不显示控件,则想要播放声音而不向 body 标签下的 DOM 添加另一个可遍历元素是完全有效的情况。它们是可选的是有原因的。

要正确回答问题,无论是否要显示 Audio 元素,它都应该放在 body 标签中。如果你不把它放在正文标签中,例如 Chrome,无论如何都会将它移到那里。

所以是的,如果您希望它可见,请将其放在 body 标签中并确保它在您想要的位置。不幸的是,如果您不希望它可见,无论如何您都需要将它放在 body 标签中,如果您不这样做,您的 DOM 树在浏览器移动时可能不是您所期望的。

正如另一个答案所提到的,如果您希望显示默认控件,那么您可以将 "controls" 属性添加到元素中,否则您仍然可以创建自己的样式并使用 Javascript.