32768pxの記述に注意

CSSで複数のカラムの高さを合わせるために、以下の記述をすることがある。


padding-bottom: 32768px;
margin-bottom: -32768px;


一種のハックなのだが、この記述をして、ページ内にアンカーリンクを設定すると、レイアウトが崩れてしまう。(特にFirefoxでは顕著)


これを避けるためには、Tableタグを使うのが一番スマートな気がする。
<div>タグで設定している全体に<table>タグを置き、カラムの要素を<td>にする。
SEO的によくないと先入観があるかもしれないが、tableタグはカラムの構造にしか当てていない。
忌み嫌われるテーブルレイアウトをあえて使うのは抵抗があるかもしれない。
でも、このやり方で回避するのが手間がかからない。


今のところ、こんなこともあるからCSSも万能ではない。
ネガティブマージンなどのハックには落とし穴がある。