今回の新しいデザインを作成した際に、IE固有のバグ「IE Doubled Float-Margin Bugに悩まされました。
このバグは、float
するとmargin
が2倍となる、IEのみの原因不明バグ。今回でのデザインでもそうだったし、おそらく一番起こりやすいケースが、div
をfloat: left
で回り込ませて、同じdiv
にmargin-left: 20px
と同じ左方向へマージンを指定するケース。20pxがなぜか2倍の40pxに表示されてしまう。Waviaeiのフッタのように、複数のdiv
を全てfloat: left
させると、一番左端のdiv
のマージンが2倍になる。
解決方法はpositioniseverything.netで示されているように、display: inline
を指定するか、CSSプロフェッショナル・スタイルのp.248に書かれている、マージンの代わりにパディングで指定する。