web-dev-qa-db-ja.com

XML / HTMLタグ内の空白

XMLとHTMLのテキストノードで空白がどのように処理されるかは知っていますが、タグ要素内の空白についてはよくわかりません。明らかに、タグ内で空白を使用して属性を分離していますが、「<」の後または「>」の前に空白を置くことは有効ですか?

例えば:

<  foo  >
< /foo >

あるいは:

<foo>
< /  foo >

これらのタグは有効なXMLですか?それらが実際のHTMLタグ名であると仮定して、HTMLはどうでしょうか?

49
Channel72

仕様(セクション3.1開始タグ、終了タグ、空要素タグ) は、'<'とタグ名の間、'</'とタグ名の間、または内部に空白がないことを示しています'/>'。ただし、タグ名の後に空白を追加できます。

<foo            >
</foo        >
<bar
/>
62
Guffa

</および/>はトークンであるため、2つの文字間の空白は構文エラーになります。 Guffaが指摘 のように、開始トークンと名前の間に空白は許可されません。ただし、要素タグと終了>(または/>)トークンの間に空白を追加しても問題ありません。

[〜#〜] edit [〜#〜]は、GuffaによるXML仕様の正しい引用を反映しています。

8
Dan Breslau

HTML [5]標準は、Guffaによって記述されているように、XML標準と正確に一致しているようです...

http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#start-tags

5
sisu

スペースで開始することはできませんが、(オプションで)スペースで終了できます(2番目の山かっこの前、最初のタグを閉じます)。

0