CSSでリスト要素タグをfloat指定して、その回り込み解除にbrタグに付けたclear:bothを使っています。たぶん回り込み解除の方法としては、一番メジャーでベターな方法だと思うんですが……このbrタグが中々曲者です。
Firefox、Operaで該当場所を表示させた時は、回り込み解除用のbrタグの効果(一行空いたように見える)が存在するのに、IE7では、それがありません。回り込み解除だけは行っていてくれているようなのですが、brタグ要素自体の一行が無いです。CSSではclear:both以外指定していなくて、スペースを空けたいがためにline-heightやmargin、paddingを試してみましたが……IE7の時だけ、見事に効果無しです。
僕は専門家ではないので、これがIE7のバグなのか仕様なのかは分からないです。てきとーにぐぐってみても、ヒットはしなかったですし。XHTMLのDOCTYPE的にはどっちが正しいのかも知らないです。もしかしたら、brタグは空要素な扱いですから、ブラウザ上で一行おくような動作をしなくたって全然可笑しくはないのかもしれないですし。いや、そもそも表示の問題なんだから、DOCTYPE云々ではないのかな、勉強不足過ぎますね;;
今回は結局全部共通してスペースを空けられなかったので、リスト要素の方のmargin弄りました……賢いやり方ではないんでしょうけど。妥協もたまには大事ですよね。うん。
ちなみにSafariをインストールしていなかったので、Safariはまだ未確認です。一度入れたはずなんだけれどなぁ。
セコメントをする