13

HTML タグの有効な文字を見つけるのに問題があります。

この ( Is the at-sign (@) a valid HTML/XML tag character? ) 回答には次のように書かれています:

XML仕様をもう一度見てください:

タグは次のもので構成されます。

'<' 名前 (S 属性)* S? '>' Name は次のもので構成されます。

NameStartChar (NameChar)* NameStartChar は以下で構成されます。

":" | [AZ] | "_" | [az] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] NameChar は以下で構成されます。

NameStartChar | "-" | 「。」| | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] @ 記号は U+0040 です

したがって、@ 記号は NameChar または NameStartChar では有効ではないため、Name では有効ではありません。

しかし、HTML 構文ページ ( http://www.w3.org/TR/html-markup/syntax.html#tag-name ) では、次のようにしか書かれていません。

タグ名は、要素の開始タグと終了タグ内で要素の名前を付けるために使用されます。すべての HTML 要素には、0 ~ 9、a ~ z、および A ~ Z の範囲の文字のみを使用する名前が付いています。

HTML タグ名の有効文字は何ですか? また、HTML4、XHTML、および HTML5 には違いがありますか?

4

1 に答える 1

-1

HTML documents must fit HTML specification. XML documents must fit XML specification. XHTML documents must fit XML and HTML specification.

So for XHTML docments you must take the intersection of valid characters from both specifications. Since XHTML is based on XML the specification it cannot allow characters that are forbidden in XML. Therefore the allowed characters in XHTML are always a subset of the ones from XML. So the allowed characters are that from the XHTML specification.

于 2013-03-03T11:54:18.940 に答える