2012-08-15 10 views
6

私はHTMLページを書いており、HTMLヘッダータグが正確に一貫していないことに気付いています。それらのうちのいくつかは終了タグを必要とし、いくつかは終了タグを必要とする。なぜ "script"は終了タグを必要としますが、 "meta"は終了しませんか?

たとえば、scriptタグには終了タグが必要ですが、metaではありません。今私はなぜだろうか?

+0

http://stackoverflow.com/a/206409/362536 – Brad

+1

ここでそれを参照してください:[http://stackoverflow.com/questions/69913/why-dont-self-closing-script - タグ作業] [1] [1]:http://stackoverflow.com/questions/69913/why-dont-self-closing-script-tags-work – Oriol

+2

上記のリンクはすべてを参照自己閉じタグ構文(XMLコンセプト)ではなく、なぜスクリプトがEMPTYとして定義されていないのか(なぜなら、明示的に閉じる必要がある)について説明します。 – Quentin

答えて

2

私は誰にも好奇心旺盛だ場合には、究極の理由は、HTMLは、もともとSGMLの方言だったということです」

...それは、現在のシステムが上に構築されたシステムに関係することだけで、任意の理由であると信じてタグは、自己クローズ(例えば、BR、HR、INPUT)、暗黙的にクローズ(例えばP、LI、TD)、または明示的にクローズ可能(例えば、閉じる)のいずれかとしてDTDで指定することができます。 TABLE、DIV、SCRIPT)XMLにはもちろんこの概念はありません。

から:https://stackoverflow.com/a/3327807/773263

9

scriptタグはコンテンツ(Javascriptコード)を含むことがありますが、metaタグは決してしないため、空の(非公開の)タグではありません。
ウェブページにJavascriptを挿入するには2通りの方法があります。第二の方法は、このように、右のHTMLファイル内のJavascriptを置くことです

<script src="path/to/my/script.js"></script> 

:外部ファイルを含む第一の方法

<script> 
    Javascript goes here 
</script> 

だから時々、scriptは、コンテンツを持っている必要があります。しかし、metaタグは、現在のページに関する少量の情報を提供するだけでよいので、空のタグで十分です。

+1

同じものを投稿する回答。技術的には、一部のブラウザでは依然として自己閉じのスクリプトタグで動作しますが、それらを使用することは悪い習慣です。 – KingCronus

関連する問題