10

一部の HTML 開始/開始タグに終了/終了タグが必要なのはなぜですか?

たとえば、が<script> 必要ですが、(実際には である必要があります) 自己終了( )?</script><img> <img src="path.jpg" />

開始タグと終了タグの間にコンテンツを要求することに関係していると思いますが、の例では<script><script src="file.js"></script>間に何も必要ありません...

含まれているスクリプトが Safari では機能するのに、FF や Chrome では機能しない理由を突き止めるのに時間を費やしたので、質問します。これは、script タグを誤ってセルフクローズしたためです。ブレ。

4

2 に答える 2

4

さまざまな終了タグ(XHTMLではない)を省略することは、実際には有効なHTML4およびHTML5です。リスト全体は次のとおりです:http ://www.w3.org/TR/html5/syntax.html#optional-tags

さらに、コンテンツを含めることができないvoid要素がいくつかあります(imgなど)。それらのリストは次のとおりです 。http ://www.w3.org/TR/html5/syntax.html#void-elements

スクリプトタグに関しては、これについての優れたStack Overflowの議論があります: なぜ自己閉鎖スクリプトタグが機能しないのですか?

于 2011-06-13T01:52:31.593 に答える
4

自己終了タグが存在する理由は、特定の要素がタグ間にあるコンテンツを自然に持たないためです。たとえば、<br /タグについて考えてみましょう。のようなものはいつ<br></br>役に立ちますか?文字スペースと時間の無駄です。この構文は XML 構文に由来し、XHTML の一部になりました。

どのタグが自己終了できる/すべきかを判断するのは、ブラウザーの HTML パーサーです。使用しているバージョンの HTML 仕様は、処理方法を定義する必要がありますが、もちろん、必ずしもそうとは限らないことは誰もが知っています。

参考までに、HTML5 (および過去のバージョン) の自己終了タグに関するすばらしい記事を次に示します。

http://tiffanybbrown.com/2011/03/23/html5-does-not-allow-self-closing-tags/

于 2011-06-13T01:45:59.513 に答える