XMLとHTMLのテキストノードで空白がどのように処理されるかは知っていますが、タグ要素内の空白についてはよくわかりません。明らかに、タグ内で空白を使用して属性を分離していますが、「<」の後または「>」の前に空白を置くことは有効ですか?
例えば:
< foo >
< /foo >
あるいは:
<foo>
< / foo >
これらのタグは有効なXMLですか?それらが実際のHTMLタグ名であると仮定して、HTMLはどうでしょうか?
仕様(セクション3.1開始タグ、終了タグ、空要素タグ) は、'<'
とタグ名の間、'</'
とタグ名の間、または内部に空白がないことを示しています'/>'
。ただし、タグ名の後に空白を追加できます。
<foo >
</foo >
<bar
/>
</
および/>
はトークンであるため、2つの文字間の空白は構文エラーになります。 Guffaが指摘 のように、開始トークンと名前の間に空白は許可されません。ただし、要素タグと終了>
(または/>
)トークンの間に空白を追加しても問題ありません。
[〜#〜] edit [〜#〜]は、GuffaによるXML仕様の正しい引用を反映しています。
HTML [5]標準は、Guffaによって記述されているように、XML標準と正確に一致しているようです...
http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#start-tags
スペースで開始することはできませんが、(オプションで)スペースで終了できます(2番目の山かっこの前、最初のタグを閉じます)。