以下斜め読んだ内容

pseudo translation of useful posts, book reviews, remarks,etc. twitter: feeddict

Ron Garret「レイアウト目的でCSSを使うべきではない」

Ron Garretの2009.2.2の公開記事

CSS should not be used for layout

コンテンツと視覚表示(presentation)の分離は維持するが、CSSはスタイル目的でのみ使用し、レイアウトはtable要素を使うべきだとしてる。
レガシーなtableレイアウトへの逆戻りではないが、CSSによるレイアウトには限界があることを踏まえてtableレイアウトの採用を認めるべき、と。

ポイント
  • CSSによるレイアウトの欠点2つ
    • 要素の配置が親要素との関係でしか決定できない。
      • 兄弟要素との関係で配置ができない。
    • CSSレイアウトによるレンダリングでは、コンテンツとレイアウトの相互作用が不可避。つまり、コンテンツとレイアウトの分離は徹底できない。
  • 例に即して説明。ヘッダー、フッターがあり、コンテンツ部分が3カラムあるタイプのよくあるレイアウト。
    • 各カラム内のコンテンツの量に応じて各カラムの高さを均等にするのが難しくなる。
    • CSSでも可能だけど、fixしないといけないという点が問題。
    • table要素をレイアウトに使えば楽々。
感想
  • 対象ブラウザ全てで、displayプロパティでtable-cellが実装されれば解決する類の問題だと思った。
  • CSSレイアウトではコンテンツとレイアウトの分離は徹底できない」の部分は冒頭に題目として書かれただけなので、この辺展開してほしい。
コメント欄

そのうちよむ