1

次の 2 つの時刻が同じように表示されないのはなぜですか?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
</head>
<body>
    <div>
     8:00
                <span>8</span>
                <span>:</span>
                <span >00</span>
    </div>            

</body>
</html>
4

1 に答える 1

1

span タグ間の改行を取り除きます。このような:

<div>
 8:00
            <span>8</span><span>:</span><span >00</span>
</div>     

仕様で見つけるのは難しいですが、事実上すべてのブラウザーがすべての空白を取り、それを単一のスペースに「圧縮」しているようです。

これは関連する SO 投稿です。

そこで受け入れられた回答では、String.Formatレンダリングをより正確に処理するために使用することを推奨しています。これは、特定の状況で役立つ場合があります。

アップデート:

HTML 4仕様によると:

SGML ([ISO8879]、セクション 7.6.1 を参照) は、終了タグの直前の改行と同様に、開始タグの直後の改行を無視する必要があることを指定しています。これは、例外なくすべての HTML 要素に適用されます。

これをバグとして説明している興味深い記事もあります

于 2010-12-08T18:27:40.970 に答える