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 で多くの空のテキスト ノードを取得します。

画像

同様の質問をした後、次のことを試しました。

  • すべてのタグを閉じます。
  • すべての空白を削除します。
  • BOM なしで UTF を使用する
  • EOL = UNIX形式

それは役に立ちません。これがなぜなのかを真剣に知りたい人はいません。

4

1 に答える 1

4

改行を含むすべての文字がテキスト ノードを生成します。

改行を削除すると、空のテキスト ノードが表示されなくなります。たとえば、

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

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

headブロックの先頭から空のテキスト ノードを削除します。

私の知る限り、IE9 開発者ツールバーで空のテキスト ノードの表示を制御することもできません。回避策として、要素のツリー表現をより明確にするFirebug Liteをインストールして使用することができます。

IE9 の Firebug Lite

空のテキスト ノードはドキュメント構造の通常の部分に過ぎず、心配する必要はないことに注意してください。改行でも生成されることに注意してください。

于 2012-10-18T07:43:39.837 に答える