【发布时间】:2017-06-30 11:24:09
【问题描述】:
在 Firefox 54 上,第一个和第三个复选框显示它们的内部文本,而第二个没有,但它们都具有相同的结构,只是使用不同的方法构造。这种行为的原因是什么?
input2 = document.getElementById("input2");
input2.innerHTML = "Check me inner HTML";
input2.innerText = "Check me inner Text";
input3 = document.createRange().createContextualFragment("<input type='checkbox'>Check me fragment</input>");
document.body.appendChild(input3);
<input type="checkbox">Check me HTML</input>
<input type="checkbox" id="input2"></input>
【问题讨论】:
-
浏览器可以随意处理无效的 HTML,没有规则。
input是一个空元素,它“必须有开始标签,不能有结束标签”。 -
<input>是一个空元素,甚至没有结束标签 -
HTML
<input>元素是空元素,不能有结束标签。
标签: javascript html innerhtml