2012-10-18 34 views
2

鉴于这种简单的代码为什么我们在一个简单的文件

<!Doctype html> 
<html> 
<head> 
<title>Start Here</title> 
</head> 
<body> 
<script type="text/javascript"> 
document.write("<h1>Start Here!</h1>"); 
</script> 
</body> 
</html> 

我得到很多空文本节点的IE9如下得到空文本节点。

Image

通过similiar问题去后,我尝试以下。

  • 关闭所有标签。
  • 删除所有空格。
  • 使用UTF没有BOM
  • EOL = UNIX格式

并没有什么帮助。没有什么严肃的bur想知道这是为什么。

回答

4

所有字符(包括换行符)都会生成文本节点。

如果删除换行符,空的文本节点将消失。例如从

<head> 
<title>Start Here</title> 

更改为

<head><title>Start Here</title> 

将从head块的开始删除空文本节点。

据我所知,您无法控制IE9开发人员工具栏中空文本节点的可见性。作为一种变通方法,你可以安装并使用Firebug Lite,让你的元素更清洁的树表示:

Firebug Lite in IE9

请注意,空文本节点是文档的结构并没有什么的只是一个正常的一部分,你应该担心 - 只要意识到即使换行符也能产生它们。

+0

没错。任何方式删除/删除/隐藏它们? – Jawad

+0

对了。但是这不会使代码难以阅读吗? – Jawad

+0

如果你想删除空的文本节点,这是唯一你真的可以做到的。如果你只是想将它们从你的开发工具栏视图中隐藏起来,那么可悲的是我认为IE9 devtools没有这个选项。 – jsalonen

相关问题