スタイルシート

さて、このCSS編ではCSSについて解説するのですが、そもそもCSSとはなんでしょう。

CSSとは、Cascading Style Sheetsの略のことで、これは実はスタイルシート(Style Sheets)の一種なのです。

今回題名にもなっているこのスタイルシートですが、HTMLや、その他にもXMLという形式で書かれた文書などの見栄えを記述するものです。

HTMLと組み合わせる場合は、スタイルシートの一種であるCSSが圧倒的に広く使われているので、この講座でもCSSを解説します。

HTMLの役割とCSSの役割

CSSをHTMLで使用する場合は、CSSは文書の見栄えを担当します。逆に、HTMLが担当するのが構造です。

この話はHTML編 2-3:マークアップとHTMLの理念でもしましたが、HTMLそのものは構造しか記述しないのです。具体的には、次のような感じです。


<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>テスト</test>
  </head>
  <body>
    <h1>見出し</h1>
    <p>段落</p>
  </body>
</html>

この文書は、見出しひとつと段落ひとつがあるだけの簡単なHTML文書です。これらはHTMLの構造です。そして、この文書のどこにも、「文字は何色で」とか「大きさはこれくらいで」とか書いていません。それは、それらがCSSの範疇だからです。

ひと昔前のHTMLを見てみましょう。これはHTML4.01文書です。


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
  <HEAD>
    <META http-equiv="content-type" content="text/html; charset=UTF-8">
    <TITLE>テスト</TITLE>
  </HEAD>
  <BODY>
    <H1><FONT color="red">赤い見出し</FONT></H1>
    <P><FONT color="blue" size="+2">青くて大きい段落</FONT></P>
  </BODY>
</HTML>

FONT要素という見慣れない要素があります。この要素は、ずばり「文字の色や大きさを指定する」という要素なのです。

ところが、HTML5では、HTMLにそぐわない要素であるとして廃止されました(ちなみにこれらは、HTML4.01の段階ですでに非推奨となっていました)。

つまりどういうことかというと、文字の色が変わろうと大きさが変わろうと、見た目が変わっただけ文書の意味は変化しないのです。だから、HTMLにはいらない要素なのです。

逆に、段落とか見出しとかは、有るのと無いのでは意味が違います。だから、HTMLで表現するのです。そして、見た目が違っても意味は変わらないので、そういった部分はCSSで表現すべきだということになるのです。

さて、これで、CSSの意味について紹介しました。いよいよ次回からCSSの書き方を紹介します。