我知道即使文件中没有声明,网页也会隐含<head>
标记。我只是在没有测试getElementsByTagName('head')
时感到好奇,它确实返回了<head>
标签。
然而,当我在页面中放置多个<head>
时,它会返回一个统一的头部。这是为什么?
答案 0 :(得分:1)
这是因为浏览器“更正”了您的HTML,以便始终包含一个<head>
。否则您的HTML无效。
答案 1 :(得分:1)
据说HTML解析器非常宽容(我听说这个功能使它们更快,更不确定)解析和评估HTML时的错误。无论你给出什么,它都会解析它而没有任何错误,试图接近你的意思。所以你只应该有一个头元素。浏览器会将其更改为正确的格式,具体取决于实现方式。因此,当javascript执行时,它将在更正后返回现有的head
元素。