addressタグにfloat:right;を付けたら、IE7.0だけで何故か横スクロールバーが出現する現象に行き当たったので、それの検証やってたら面白いもの見つけちゃった。
IE7.0において、CSSのbodyに付けたwidth:770px; margin:0 auto;などはDOCTYPE宣言されてないと動かない。
……っぽいね。
具体的には、
<?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <title>aaa</title> </head> <body style="width: 770px; margin: 0 auto;"> <div> <hr /> <address style="float:right;">アドレス</address> </div> </body> </html>
──はIE7.0でも動作するんだけど。
ここから<!DOCTYPE……>の行を消しちゃうと、widthが無視されちゃうらしい(あるいはmarginのautoが効かないらしい)。不思議、不思議。
最初なんでかわかんなくて、原因見つけるのに10分ぐらい探し回ったよ……めんどーな;
セコメントをする