XHTML 1.0 规范在http://www.w3.org/TR/2002/REC-xhtml1-20020801/#xhtml中声明:
XHTML 1.0 [...] 是作为 XML 1.0 [XML] 应用程序的三种 HTML 4 文档类型的重新表述。
XML 1.0 规范在http://www.w3.org/TR/2008/REC-xml-20081126/#syntax中声明:
字符数据和标记:文本由混合的字符数据和标记组成。[...] & 符号 ( &
) 和左尖括号 ( <
) 不得以其文字形式出现,除非用作标记分隔符,或者在注释、处理指令或 CDATA 部分中。如果在其他地方需要它们,它们必须分别使用数字字符引用或字符串“ &
”和“ <
”进行转义。右尖括号 ( >
) 可以使用字符串 " >
" 表示,并且为了兼容性,当它出现在内容中的字符串 " " 中时,必须使用 " >
" 或字符引用进行转义]]>
,当该字符串未标记结束时的 CDATA 部分。
这意味着在编写 XHTML 文档的文本部分时,您必须转义 &、< 和 >。
你可以逃避更多,例如 ü 对于变音你。您也可以声明该文档以例如 UTF-8 编码并写入字节序列 0xc3bc 以获得相同的元音变音 u。
在编写文档的元素部分(列“标签”)时,有不同的规则。您必须注意“,”以及有关注释,CDATA等的许多规则。还有一些规则可以在元素和属性名称中使用哪些字符。您可以在XML规范中查找,但在最后归结为:对于元素和属性名称,使用字母、数字和“-”;不要使用“_”。对于属性值,您必须转义 & 和(取决于引号样式)' 或 "。
如果您使用众多库之一来编写 XML/XHTML 文档,其他人已经处理了这一点,您只需告诉库编写文本或元素。所有的转义都是在后台完成的。&