大多数文档中将某些html属性描述为没有值。例子包括
<script async ...>
<option selected ...>
<input type="checkbox" checked ...>
这些属性和空属性之间是否存在功能/语义上的差异?
<script async="" ...>
<option selected="" ...>
<input type="checkbox" checked="" ...>
我之所以问是因为我正在使用一些库来解析html,然后操纵几个节点,然后将节点序列化回html,而序列化程序将前者转换为后者。
使用空的属性值是否还可以,还是应该让html返回上面的顶级格式?
答案 0 :(得分:2)
没有为其分配值(例如,选中)的布尔属性隐式等效于为其分配了空字符串(即,选中的=“”)的布尔属性。结果,它代表了真实的价值。
答案 1 :(得分:0)
从功能上来说,这应该具有相同的效果,但是空属性可能会导致XHTML验证问题,尽管根据要求/规范,这可能不会成为问题。您随时可以在W3C验证器上对其进行检查:https://validator.w3.org/