0
在代码片段TBODY奇怪的行为,波纹管,我们有0元的类名ABC:使用javascript选择
var tbody = document.getElementsByClassName('abc');
console.log('tbody: ' + tbody.length)
var unKnown = document.getElementsByClassName('edf');
console.log('unKnown: ' + unKnown.length)
<tbody class="abc">
<tr><td>Hi!</td></tr>
</tbody>
<dflgkjldk class="edf" />
但未知元素已经javasctip发现。你知道原因吗?
''
被完全忽略,因为它不是'如果你检查了这个区域,你有''标签,但是没有tbody标签。 –
@Felix Kling,是的:*为什么不正确放置的标签/元素被忽略,但未知的元素不是*。 –
回答
我可能是错的,但我认为如果使用不正确的元素(错误地读取了元素的tbody示例),浏览器足够聪明,可以将其从DOM中过滤出来。
包含未知元素,因为在HTML中您可以指定自己的元素。浏览器不知道如何处理它们,但它知道它应该包含在DOM中。
阅读本关于不明元素以及它们为何如此有用:Is it OK to use unknown HTML tags?
来源
2017-03-01 23:01:24 xszaboj
缺少“表”元素呈现称为“TBODY”标签不正确的,为此它被忽略。如果你只是用一个“表格”标签包装你的tbody,它就会起作用。
来源
2017-03-01 23:31:11
相关问题