Html 什么是文本节点?
通常,如果HTML中的标记之间有文本,它将成为文本节点。然而,情况并非总是如此。考虑这个例子:Html 什么是文本节点?,html,google-chrome,dom,textnode,Html,Google Chrome,Dom,Textnode,通常,如果HTML中的标记之间有文本,它将成为文本节点。然而,情况并非总是如此。考虑这个例子: <p> <a href="hello.html">hello</a> <a href="world.html">world</a> </p> 在这里,和第一个之间的换行符和2个空格在DOM中不会显示为文本节点,至少在Chrome中不会hello和world当然是文本节点。似乎只有空格的序列不会显示为文本节点,但情况并非
<p>
<a href="hello.html">hello</a> <a href="world.html">world</a>
</p>
在这里,
和第一个
之间的换行符和2个空格在DOM中不会显示为文本节点,至少在Chrome中不会hello
和world
当然是文本节点。似乎只有空格的序列不会显示为文本节点,但情况并非总是如此:在本例中,两个链接之间的空间是文本节点
Chrome是如何决定什么成为文本节点的?在Chrome中试试这个,你会看到
p
的第一个孩子是text
:
let p=document.querySelector('p')
console.log(p.firstChild.constructor.name)
铬并不决定。就规范而言,DOM规范清楚地指出了这是如何确定的。哎呀!我确信如果它没有显示在元素视图中,那么它就不在那里。。。