3 回答
TA贡献1829条经验 获得超7个赞
实际上HTML和XHTML之间存在差异。由于XHTML是XML,因此XML ID的规则适用:
类型ID的值必须与名称生成匹配。
NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#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]
对于HTML,以下内容适用:
id = name [CS]
此属性为元素指定名称。该名称在文档中必须是唯一的。ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(“ - ”),下划线(“_”) ,冒号(“:”)和句号(“。”)。
TA贡献1911条经验 获得超7个赞
W3C规范基本HTML数据类型说“ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(” - “),下划线(” _
“),冒号(”:“)和句号(”。“)。”
TA贡献1878条经验 获得超4个赞
如果我们从字面上理解你的问题的标题,那么HTML和XHTML规则都不适用。相反,相关的规范是DOM。
以DOM Level 3为源,并假设“DOM ID”表示设置了“ID”标志的属性,则该值为“DOMString”,其中的字符可以是任何UTF-16可编码字符。
16位单元
DOMString的基本单元。这表明DOMString上的索引以16位为单位发生。这不应该被误解为DOMString可以存储任意16位单元。DOMString是以UTF-16编码的字符串; 这意味着必须保持UTF-16的限制以及对字符串的其他相关限制。单个字符,例如以数字字符引用的形式,可以对应于一个或两个16位单元。
当然,这可能不是你想要的,Ludwig Weinzierl的答案就是你想要的。然而,理解并非所有DOM都可以序列化为HTML或XHTML并且DOM具有自己的规则集是明智的。
- 3 回答
- 0 关注
- 817 浏览
相关问题推荐
添加回答
举报