CSSの基礎知識[draft]

スタイルシートによって、エレガントなウェブデザインを実現しよう。そうしよう。

なぜCSSなのか

なぜCSSデザインにこだわるのでしょうか。既存の方法でも十分思い通りのデザインが実現できているのに。

HTMLじゃデザインできない

今までのウェブデザインはテーブルレイアウトが常識でした。HTMLのリファレンス本には当たり前のようにテーブルの組み方が載っています。テーブルレイアウトは思いのままのレイアウトを実現してくれるのでとても便利です。

ただ、このtableタグの使い方は本来想定されていないものです。HTMLの仕様を策定しているW3Cの勧告によれば、tableタグは表組みを表現する為に用いると指定されています。

もともと、HTMLは文書を記述する為の言語で、デザインやレイアウトを実現する為のものではありませんでした。インターネットが急速に普及していくにつれ、単なる文書で構成されたウェブサイトをいかに魅力的に見せるかがデザイナーの腕の見せ所になっていきました。テーブルレイアウトとはウェブデザイナーがそのような苦悩の中で編み出した裏技的な技術だったのです。

テーブルレイアウト否定論

「本来はそういったものだったかも知れないけれども結果的に理想のデザインが実現できているのだから良いじゃないか」という意見もあります。それも一理あります。しかし、テーブルレイアウトには根本的な問題が存在するのです。

ウェブに関わる仕事をしている方ならばアクセシビリティやユーザビリティという言葉を聞いたことがあるかもしれません。ウェブサイトは「誰でも、使いやすく、わかりやすく」あるべきだという考え方です。

スタイルシートの問題点

ブラウザの互換性、標準/互換モードの差異について。

スタイルシートの役割

スタイルシートの役割とはいったいなんなのでしょうか。

コンテンツとデザインを切り分ける

スタイルシートの役割のひとつに、コンテンツとデザインを切り分けるというものがあります。デザイン部分をスタイルシートに一任してしまえば、

マークアップを明確にさせる

スタイルシートはHTMLのタグに対して指定するものなので、おのずとHTMLのマークアップについて考慮させられます。よく考慮してマークアップされた文書は

CSSでデザインを指定する方法

ウェブページにスタイルを指定する方法は複数あります。また、その規則もHTMLによるデザイン指定とは大きく異なります。以下ではその大まかな概要をまとめます。

Closure.jp/ Laboratory/ CSSの基礎知識
closer