TOPシステム開発【即実践!HTML+CSS】テーブルレイアウトから脱出せよ!> 第2回:カラムを理解する! (3/3)

【即実践!HTML+CSS】テーブルレイアウトから脱出せよ!

【即実践!HTML+CSS】
テーブルレイアウトから脱出せよ!

第2回:カラムを理解する!

著者:米倉 明男

公開日:2008/04/08(火)

float(フロート)を使った3段組カラム作成

次は3段組を作ってみましょう。「ナビゲーション」エリアを左に、「メインコンテンツ」エリアを真ん中、追加で「サブ」エリアを右側に配置します。

一見、複雑になったかのように見えますが、配置方法は先ほどの2段組と同じです。今回は「ナビゲーション」エリア<div id="navi">と「メインコンテンツ」エリア<div id="main">を包括する<div id="wapper">を作ります。ボックスを入れ子状態にするのです。

まず<div id="wapper">と<div id="sub">ボックスを左右にフロートします。次に<div id="wapper">の子ボックスにあたる<div id="main">と<div id="navi">を左右にフロートします。2段組のカラムの中の1つに、さらに2段組カラムが入ったように組むのです(リスト3、4)。

図3:3段組カラム作成
(画像をクリックすると別ウィンドウに拡大図を表示します)

カラム作成の注意点

前回のボックスモデルの解説で、ボックスを使用する際にwidth(幅)を指定したボックスでは、padding(内側の余白)とborderは指定しないという方法を実践しました。これはカラム作成でも同様です。

左カラムをfloat:leftでwidth:150px、右カラムにfloat:rightでwidth:200pxと指定した場合に、それぞれにpaddingやborderを指定してしまうとWebブラウザによって異なった解釈が起こる可能性があり、レイアウトが崩れてしまいます。通称「カラム落ち」になります。

Firefoxなどのモダンブラウザでサイトを閲覧していると、時々このような「カラム落ち」を見かけます。これはIEを基準にコーディングして、モダンブラウザのチェックを怠っていると推測できます。CSSコーディングの鉄則は、まずモダンブラウザで検証し、その次にIEで検証をすることです。バグを抱えたWebブラウザの誤った解釈を基準にコーディングしてしまうと、今後IEのバージョンがあがり、CSSへの対応レベルが改善された場合、整合性があわなくなる可能性が高くなります。

前回のボックスモデルと今回のフロートを使用したカラム作成で、大枠のCSSレイアウトが組めるようになりました。

次回は、リストタグを使用したナビゲーション作成です。Webサイトに必須となるユーザインターフェイスの核ですのでぜひマスターしましょう。 タイトルへ戻る




米倉 明男
著者プロフィール
米倉 明男
Webデザイナー
印刷会社、Web制作会社などのデザイナー/ディレクターを経て、2007年からフリーランスとして活動。デジタルハリウッド講師。
http://www.morethanwords.jp


INDEX
第2回:カラムを理解する!
  テーブルレイアウトでのカラム作成
  float(フロート)の概念
float(フロート)を使った3段組カラム作成