0

パーセンテージで幅の値を渡すことによってタグを使用してページを列に分割する場合、つまり、ボディのdiv幅を100%として宣言し、その中で2つのdivを20%と80%の幅として宣言すると、IE8では正常に機能しますが、Firefoxでは機能しません2番目の幅を80%から79%に変更しない限り。u plsは理由を説明できますか?

4

1 に答える 1

2
  1. 適切なDoctypeを定義する:<!doctype html> これはIEにとって非常に重要です。そうでない場合、彼は別のboxmodellを使用するからです。

  2. 現在のw3c-boxmodellはcontent-widthのみを考慮していることに注意してください。これは、マージン、境界線、および/またはパディングが宣言されている場合、これが幅を台無しにすることを意味します。

80%/ 20%の列を定義しても、border:1px ...これがあるとデザインが台無しになります。これは、事実上、境界線の80 + 20 = 100%+4px->ページが壊れることを意味するためです。

新しいブラウザ(ボックスサイズ設定:IE8以降と呼ばれます)でboxmodellを切り替えて、幅の宣言にパディングや境界線を含める「より良い」boxmodellを使用できます。

編集:

ボックスサイジングに関するMDN-Link

于 2012-05-10T12:57:57.953 に答える