HTML属性的长度问题

越来越多的同学喜欢把数据存放在html属性上,比如

<p data-info="{a:1,b:2}">xxx</p>

一堆JSON数据放在data-info里。存放的属性值有长度限制吗?如果有最大长度是多少?

 

分别从HTML4和HTML5的规范去查看。

HTML4

3.2.2节介绍Attribute,里面没有提到长度的限制。

 

SGML

HTML4来源于SGML,看看SGML有没有这方面的规定。

貌似最大是65536。

 

HTML5

3.2.3.1 Attributes 里也没有提到长度显示。

 

当然,用各浏览器测试下是最好的结论。

 

相关:

http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.2

http://www.w3.org/TR/html401/sgml/sgmldecl.html

http://www.highdots.com/forums/html/length-html-attribute-175546.html

### 关于 `<p>` 标签属性长度限制 在 HTML 中,`<p>` 标签用于定义段落。虽然 HTML 规范并未明确规定 `<p>` 标签本身的长度限制[^1],但在实际应用中,某些属性可能受到特定约束。 #### 属性长度限制 对于 `<p>` 标签中的常见属性(如 `style` 或 `class`),其长度通常由浏览器实现决定而非标准本身规定。然而,在实践中需要注意以下几点: 1. **`style` 属性** 虽然理论上可以无限扩展 `style` 的内容,但由于性能原因,过长的内联样式可能会降低渲染效率[^3]。因此建议将复杂的样式提取至外部 CSS 文件中管理。 2. **`class` 和 `id` 属性** 这些属性主要用于标识 DOM 元素并关联样式或脚本逻辑。尽管没有硬性字数上限,但为了维护性和可读性考虑,推荐保持简洁明了的名字组合[^4]。 3. 浏览器兼容性与解析行为 不同浏览器对超大字符串输入可能存在差异处理方式;极端情况下甚至可能导致崩溃或者截断现象发生。所以即便技术层面允许任意大小设置,也应遵循合理范围内的编码习惯来规避潜在风险。 以下是展示如何正确运用这些概念的一个简单例子: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Paragraph Example</title> <style> .long-text { max-width: 500px; color: blue; } </style> </head> <body> <!-- 使用 class 来控制样式 --> <p class="long-text">This is a paragraph with some text that could potentially be very long...</p> <!-- 内联 style 示例 (不推荐过度使用)--> <p style="font-size: 16px; line-height: 1.5;">Another example of styling directly within the tag.</p> </body> </html> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值