我一直在阅读一些关于HTML,XHTML等的文章。在大多数文章中(即My preferred syntax style)说布尔属性应该写成没有任何值,如下所示:
<input type="text" required>
他们甚至说使用这样的属性是错误的:
<input type="text" required="required">
部分文章链接W3,其中包含:
如果该属性存在,则其值必须是空字符串或者是属性规范名称的ASCII不区分大小写匹配的值,没有前导空格或尾随空格。
但在示例中显示如下:
以下是选中和禁用的复选框示例。该 checked和disabled属性是布尔属性。
<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>
那么,应该如何编写布尔属性?根据您的经验,哪些选项是跨浏览器的,哪些不是?
答案 0 :(得分:5)
没有值的属性在HTML中有效,但在XHTML中无效,因为XML中不允许这样做。也许这就是你的困惑所在。因此,哪一个有效取决于您的文档的doctype。
答案 1 :(得分:2)
我总是使用checked="checked"
和disabled="disabled"
。我没有理由添加它,但它一直适用于我测试的所有浏览器。这包括IE6 +。