HTML 属性值的最大长度

Posted

技术标签:

【中文标题】HTML 属性值的最大长度【英文标题】:Max length of an HTML attribute value 【发布时间】:2011-02-14 16:45:39 【问题描述】:

我怎么知道元素属性值的最大长度是多少?

例如

<div id="value1..."></div>

此 div 的 ID 属性和任何元素的任何其他属性的最大允许长度是多少?

【问题讨论】:

***.com/questions/1496096/… 的副本。另见***.com/questions/584184/… 【参考方案1】:

根据SGML Declaration of html 4,限制为65536个字符:

ATTSPLEN 65536   -- These are the largest values --
LITLEN   65536   -- permitted in the declaration --
NAMELEN  65536   -- Avoid fixed limits in actual --
PILEN    65536   -- implementations of HTML UA's --

LITLEN 限制可以出现在单个属性值文字中的字符数,ATTSPLEN 限制出现在标签中的所有属性值规范的所有长度的总和。

Apparently, the limits used to be much lower in HTML 2,当时人们在 1995 年一直在抱怨。

【讨论】:

64KB 对于任何人来说应该都绰绰有余了...我以前在哪里听过这个故事?【参考方案2】:

根据this page,技术上没有限制。在各种浏览器中进行实际测试会显示它们的限制,但我猜测限制会过长。

【讨论】:

【参考方案3】:

超出任何实际需要。

我经常使用 ASP 网络表单,并且通常有 100 多个字符的 ID。

【讨论】:

我可以想象 1000+ 会派上用场的数据属性 或 node-position-ids 指的是树结构中的分支... 64K 是我希望得到的答案:) 如果我在数据属性中传递 JSON,那么我们可以查看兆字节。

以上是关于HTML 属性值的最大长度的主要内容,如果未能解决你的问题,请参考以下文章

共享首选项 - 单个值的最大长度

显示 textarea 值的长度超出最大值

SSDEEP哈希算法的最大长度结果

HTML <textarea> 的最大长度

对象数组的对象。获取具有相同属性的所有值的长度

Jahia:节点属性的最大长度约束