0

StackOverflowers さん、こんにちは。

設定:

この問題は、ここで取り上げられている問題と同じです。具体的には、次のとおりです。

HTML:

<div class="outer">
  <div class="inner">left</div>
  <div class="inner">right</div>
</div>

CSS:

.outer{
  width: 100%;
}

.inner{
  float: left;
  width: 50%;
}

Internet Explorer 8 で表示されます。ここで JSBin の例を確認できます。

問題:

上記の問題で述べたように、 IE が実装するサブピクセルの丸めにより、ウィンドウのサイズを変更し、IE のズーム レベルを 100% に設定すると、右側の div が強制的に新しい行にドロップされます。または150%。または50%。ただし 75%、125%、95% などではありません。

質問:

なんで?ズーム レベルは、サブピクセルの丸めの問題にどのように影響しますか。 IE ズーム レベルを 95% に設定すると、ウィンドウのサイズ変更がどれだけ実行されても、2 番目の div が新しい行に移動しないのはなぜですか?

みんなありがとう!

4

1 に答える 1

0

IE が常に切り上げを行うということの意味を考えてみてください。

ズームが 100% で幅が 701px の場合はどうなるでしょうか。50% は 350.5px です。つまり、IE の両方の 50% は 351px に切り上げられ、合計幅が 702px になり、オーバーフローします。

さて、95% で、701px の 95% は何ですか? 665.95px、666px に切り上げます。その 50% は 333 ピクセルで、合計すると 666 ピクセルになります。今それは動作します!

もちろん、これはすべてウィンドウの幅に依存するため、95% が役立つ場合もあれば、実際に問題が生じる場合もあります。

于 2012-08-15T19:49:21.910 に答える