gpt4 book ai didi

html - 自定义 data-* 属性的名称中允许(不允许)哪些字符?

转载 作者:太空宇宙 更新时间:2023-11-04 15:01:51 25 4
gpt4 key购买 nike

我正在开发一个用于视网膜图像服务的 JS 插件。标识这些图像的属性应该如下所示:

data-retina@2x,data-retina@1.5x,data-retina@2.5x

你能告诉我这些属性是否有效吗? HTML 和 XHTML 中的自定义数据-* 属性的名称中允许(不允许)哪些字符?

最佳答案

参见 definition of the data-* attribute在 W3C HTML5 推荐标准中:

  • 在 HTML5 中,名称必须XML 兼容(并且它会自动转换为 ASCII 小写)。

  • 在 XHTML5 中,名称必须XML 兼容并且不能包含大写 ASCII 字母。

definition of XML-compatible说是

  • 不得包含:个字符
  • 必须匹配 XML 1.0 规范中的 Name 产生式

Name production列出允许使用的字符。


tl;dr:对于data-之后的部分,您可以使用以下字符:

  • 0-9
  • a-z
  • A-Z(不在 XHTML5 中)
  • - _ . ·
  • 以及来自这些 Unicode 范围的字符:

    • [#x0300-#x036F] ( Combining Diacritical Marks )
    • [#x203F-#x2040] ( )
    • [#xC0-#xD6]
    • [#xD8-#xF6]
    • [#xF8-#x2FF]
    • [#x370-#x37D]
    • [#x37F-#x1FFF]
    • [#x200C-#x200D](零宽度非连接,零宽度连接)
    • [#x2070-#x218F]
    • [#x2C00-#x2FEF]
    • [#x3001-#xD7FF]
    • [#xF900-#xFDCF]
    • [#xFDF0-#xFFFD]
    • [#x10000-#xEFFFF]

所以 @ (U+0040) 是不允许的。

关于html - 自定义 data-* 属性的名称中允许(不允许)哪些字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33068777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com