互換モードじゃありませんか
DOCTYPE宣言によってはIEの挙動がバグだらけになります。
いわゆる「互換モードと標準モード」における、互換モードの問題です。
そうならない様に「標準モード」になるDOCTYPE宣言を使用するのがセオリーなのですが、今日行ったコーディングではレギュレーションで互換モードが指定されており、久々に汗をかく事に。
ズームでずれる
IEの互換モードではblockのmarginがマトモに解釈されません。一見上手くいっていても、ズームしてみるとずれたり(zoom:1;でも無理)。
私の場合、これはpaddingを主に書き換え必要ならばblockを入れ子にして対応します。
まぁ、ここまでは、HTMLコーディングではよくある事です(ノ∀`)
印刷でずれる
position を使用していると、何故か印刷でずれまくります(ノ∀`) もちろんIE互換モード。
小一時間悩みました。どうやら、印刷の場合はpaddingがマトモに解釈されないようです。
つまり
IE互換モードの(特にpositionを使う)場合、
- ブラウザ上では特にズーム時にmarginの解釈がおかしい
- 印刷上では特にpaddingの解釈がおかしい
状態になってしまいます。
今回は、IEのみに印刷用CSSを当てる事で対応しました。
コメントは受け付けていません。