2

IEで問題が発生しているのは、フレキシブル/流体レイアウトの要素の背景画像のみです。

基本的に、垂直方向に並べて表示するには、背景画像(1px x 1px)が必要です。レイアウトが全幅の場合、背景画像は左から676ピクセルの位置にあり、パーセンテージに変換すると70.56367 になります(676px divide by it's container of 958px)。

これはFirefoxChromeSafariで正常に機能しますが、IE(6、7、8)では機能しません。背景の位置は、パーセンテージが小数ではなく完全な数値である場合にのみ機能するようです。70%または71%などに設定すると、背景の位置が変わります。

これが私が持っているものとそれがブラウザにどのように表示されるかです:

background:url(link/to/image.gif) repeat-y 70.6680584551148% 0;/*676px/958px*/

また、背景の位置を別々のX値とY値として設定してみました(ただし、同じ結果です)。

background-position-x:70.6680584551148%;/*676px/958px*/
background-position-y: 0;

Firefox(v3.6.3):

ここに画像の説明を入力してください

Chrome(12.0.742.100):

ここに画像の説明を入力してください

Safari(5.0.2):

ここに画像の説明を入力してください

Internet Explorer(6、7、および8-すべて同じ結果):

ここに画像の説明を入力してください

だから私の質問は、これはブラウザが全体ではないパーセンテージを計算できないIEの問題ですか?または、私が見逃している修正や何かがありますか?

4

3 に答える 3

3

私は最近、em. 幸いなことに、IE は小数点以下 2 桁目以降を無視するように見えるため、これはプロトタイプに過ぎませんでした。IE8 をロードし、F12 を押して開発コンソールをプルアップすることで、自分の目で確かめることができます。パーセンテージでCSSを見つけて、その内容を確認してください。

記録のために、私のem測定値は、(私のテストでは0.7056367). したがって、IE が最も近いパーセンテージ ポイント ( ) または最も近い 100 分の 1 パーセント ( ) に丸めることは、私には非常に現実的であるように思われます。70.56367%0.7070%70.56%

于 2011-06-21T04:42:57.630 に答える
0

IE は常に私たちにより多くの仕事をさせてくれます。おそらく別のCSSスタイルを使用することが答えです

<!--[if gte IE]>
<link rel="stylesheet" type="text/css" href="iespecific.css" />
<![endif]-->
于 2011-06-21T04:36:08.707 に答える
0

背景画像はコンテナー DIV の幅に収まる必要があるため、コードは次のようになります。

background:url(link/to/image.gif) scroll repeat-y 0 0;
于 2011-06-21T04:42:11.037 に答える