-1

I know that a web page has an implied <head> tag even when there is none declared in the file. I was just curious in testing getElementsByTagName('head') when there is none and it does return a <head> tag.

However, when I placed more than one <head> in the page... it returns a unified head. why is this?

4

2 に答える 2

1

これは、ブラウザが HTML を「修正」して、常に単一の<head>. それ以外の場合、HTML は無効です。

于 2012-04-08T07:01:01.193 に答える
1

HTML パーサーは、HTML の解析と評価のエラーに対して非常に寛容であると言われています (この機能により高速になると聞きましたが、確かではありません)。あなたが何を与えても、あなたが意図したものに近づけようとして、エラーなしでそれを解析します。したがって、 head 要素は 1 つだけである必要があります。ブラウザは、実装に応じて正しい形式に変更します。そのため、JavaScript が実行されるとhead、修正後に既存の要素が返されます。

于 2012-04-08T07:14:43.007 に答える