CSSの書き方に注意していこう。

Monday, November 17, 2008

カテゴリー:CSS,WEB

souce.gif右図のようなページがあったとします。 id「nav」を付加しているdiv内にあるナビゲーションのリストを、どのようにcssで表現しますか?

大まかに4つの方法。

書き方は色々あると思いますが、以下の4つの方法に分けられると思います。

1、各liに対してidをつけることで、それぞれのリストを表現する

li#top {
	color: #FFF;
}

2、idを付加したdivでulを囲み、各liにclassを付加する

div#menu ul li.top {
	color: #FFF;
}

3、ulにidを、各liにclassを付加する

ul#menu li.top {
	color: #FFF;
}

4、各liにclassを付加する

div#nav ul li.top {
	color: #FFF;
}

4つの書き方の解説。

1、まず初歩的なやり方として、各liにidを付加するやり方。
この場合のhtmlはあまり汚れることがないのですが、idを利用していることで、ページ内で2度目の出現が許されないのが、難点です。
例えば、「div id="footer"」に見た目は違うけど、内容が同じナビゲーションをつけたいと思った場合、再度idもしくはclassを付加して表現しないといけなくなります。

2、cssに慣れてきた頃によくあるdivを作ってその中で展開してしまうパターン。
確かにdivで囲んでしまえば大概のことはできてしまいますが、divばかりが増えて、htmlが汚くなってしまうのが難点。

3、2の状態から少し進化した形。
htmlの要素に対して、idやclassを付加することに臆しなくなるとしめたものですね。

4、最後に外の大枠で括っているdivを利用して指定する方法。
「div id="nav"」内に2つのリストが必要な場合は、3の方法をとらざる得ないですが、もし「div id="nav"」内に1つのリストだけが存在する場合は、4の方法がよりhtmlを汚すことなく表現でき、かつ拡張性も高いので望ましい形と言えます。

以上4つのやり方を書きましたが、cssレイアウトをしていく中で、3か4の方法を身につけて行けばいいと思います。

coyummy

No Trackback

This post's TrackBack URL
http://www.coyummy.com/mt/mt-tb.cgi/156

No Comment

Add your comment

投稿する場合、下記のボタンを押してください