【发布时间】:2011-09-07 14:54:42
【问题描述】:
我一直在阅读一些关于 HTML、XHTML 等的文章。其中大多数(即My preferred syntax style)都说布尔属性应该写成没有任何值,如下所示:
<input type="text" required>
他们甚至说这样使用这个属性是错误的:
<input type="text" required="required">
这篇文章的一些链接W3说:
如果该属性存在,其值必须是空字符串或与属性的规范名称匹配的不区分大小写的 ASCII 值,并且没有前导或尾随空格。
但在示例中显示如下:
这是一个选中和禁用复选框的示例。这 选中和禁用属性是布尔属性。
<label><input type=checkbox checked name=cheese disabled>Cheese</label>
这可以等效地写成这样:
<label><input type=checkbox checked=checked name=cheese disabled=disabled> Cheese</label>
您还可以混合样式;以下仍然是等价的:
<label><input type='checkbox' checked name=cheese disabled="">Cheese</label>
那么,布尔属性应该怎么写呢?根据您的经验,哪些选项是跨浏览器的,哪些不是?
【问题讨论】:
-
为什么“but in the examples show like this”中的“but”?
-
“它的值必须是空字符串或属性规范名称的不区分大小写的 ASCII 匹配值,没有前导或尾随空格”它没有说可以是无值或类似的东西
-
没有值被解析为“空字符串”。
-
对于所有浏览器,
readonly=""是否与readonly相同? -
嗯,这是你的问题。我希望有人真正回答它。 :) 我只是想知道为什么你认为 W3 规范是矛盾的。