IE7では、タグ内の複数の改行(<br />
またはを使用)により、IE7は区切りを1つの区切りに折りたたむことができます。これを示すために、次のHTMLコードを使用できます。<br>
<pre>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<style type="text/css">
*
{
margin: 0px;
padding: 0px;
}
.a, .b
{
float: left;
}
.b br
{
display: block;
}
</style>
</head>
<body>
<pre class="a">Line 1a<br /><br />Line 2a</pre>
<pre class="b">Line 1b<br /><br />Line 2b</pre>
</body>
</html>
結果は次のようになります:(IE7の場合)
Line 1a Line 1b
Line 2a
Line 2b
そして、結果は次のようになります:(他のブラウザの場合:FFなど)
Line 1a Line 1b
Line 2b
Line 2a
ご覧のとおり、タグ自体を使用display: block;
して修正できます。<br />
ただし、問題は、他のブラウザーでは機能しなくなることです。したがって、IE7は実際には主要なブラウザーではなく、将来的には使用されないため、IE7の修正にすぎず、役に立たないということです。
これは単なるコメントであり、タグの代わりにタグ<pre>
でCSSコードを使用する方が適切です。同様の動作をシミュレートするために、CSSハックや特定の方法を使用せずに、クロスブラウザ方式でこれを修正する方法について質問します。ブラウザを対象としたCSSコード。<div>
white-space: pre-wrap;word-wrap: break-word;