そういえばブロック要素のセンタリングに関して、Netscapeもめんどくさいバグがある。
widthで指定した幅が絶対指定(px)の場合、指定した幅よりもウィンドウサイズを小さくすると、ブロック要素の左側が隠れてしまう。
marginをautoにした場合、普通は最小のマージンが0になるのだが、なぜかマイナスになってしまうようだ。
左のマージンを0など、auto以外の値にすれば隠れる事はなくなるのだが、それだとウィンドウサイズが大きくてもセンタリングされない。
ちなみに、tableタグの場合はウィンドウ幅よりテーブルの幅が大きくてもバグが起きず、問題なく表示される。
ということは‥、display:table;とdisplay:table-cell;を使ってやると解決するんだなこれが。
意外にも、Netscape6以降ぐらいならこれに対応してる様子。
display:table;がtableタグにあたり、display:table-cell;がthやtdタグにあたる。
一段ならばtrにあたるdisplay:table-row;は書かなくてもOK。
入れ子が一つ増えるのは気分が悪いけど、隠れて読めなくなるよりまし‥かもしれない。
PR