CSS (Cascading Style Sheets)
スタイルシート(CSS)
の導入は比較的最近 (1996年12月) のことですが、アイデアそのものは以前からありました。
SGML
にはすでに DSSSL(Document Style Semantics and Specification Language)
と呼ばれるスタイルシートについての仕様があります。DSSSL
は最近になって SGML
の国際規格として確立されたのですが、人間にとって理解するのが非常に難しいものとなっています。ということは、HTML
の原則である「人間とコンピューターの両者にとって読みやすく理解しやすい」という理念に反するわけです。
このため、W3Cではこれに代わるスタイルシートの実現のアイデアとして、CSS
と呼ばれるものが提案されたのです。CSS
フォーマットは人間にとって理解しやすく、HTML
制作者のことを考えて設計されたものです。
HTML
の仕様にスタイルシート (CSS
) が取り入れるというのは、Webでは比較的最近の進化ですが、スタイルシートそのものは DTP(Desktop publishing)
の世界では頻繁に使われている技法です。スタイルシートは特定の体裁で文書を作成するためのものとして、DTP
ソフトやワープロソフトで使われており、個々の文書や印刷物に固有のスタイルを作成するフォーマット用テンプレートとして加工することができます。Microsoft Word
や「一太郎」などのワープロソフトを使ったことのある人なら、ソフトに標準でついてくる既製のスタイルシートを使ってユーザが希望のスタイルに文書をフォーマットできることを御存知でしょう。HTML
ドキュメントに大量のフォーマット情報を追加するのはおそらく不可能です。HTML
は本格的なレイアウトやフォーマットの規則を念頭に設計されたものではないからです。装飾上のレイアウトではなく、論理的な文書構造に従ったレイアウトを行うという考え方を踏襲しています。HTML
では DTP
制作環境だけでなく、一般的なワープロソフトで実現されている凝った表現ができないからです。スタイルがそれほど重要でない場合でも、Webページに写真やイラスト、見出しの装飾属性などの要素を貼る時の制約に、彼らは不満を持っていたのです。Microsoft
や Netscape
が W3C とは別に独自に発表したタグの多くが、HTML
のこうした欠点に対処するためのものでした。center
タグや spacer
タグなどは HTML
ベースとしている論理構造に準拠していませんが、今もって制作者には人気があります。Netscape
に実装されていた spacer
要素は、現在は廃棄されています。CSS
は Webページにフォーマット的要素をもっと使いたいと考えている制作者の希望と、異なるプラットフォームやブラウザ間で問題なく使える言語としての HTML
の柔軟性の橋渡しをするために設計されました。CSS
を使って作ったページは、当時の HTML2.0
に厳密に準拠したブラウザでも問題なく読めて、しかも CSS
に対応したブラウザ上ではスタイル的、あるいはフォーマット的要素を実現したのです。HTML
への実装はこちらの カスケーディング・スタイルシート をご覧ください。