本文書では、プロパティの適用対象を示す場合に使われる要素の種類の区分けを行っています。 CSS の各プロパティは、すべての要素に適用できるとは限りません。 要素は大きな区分けとして、ブロック要素とインライン要素にわけられますが、適用対象がブロック要素にだけに限られているようなプロパティもあります。
ブロックレベルとして定義されるもの、またはブロックレベルをとる要素のことを指します。ブロック要素は、1つのブロックとして文章を構造化します。視覚ブラウザは、ブロック要素の多くを前後1行空きで表示し、ウィンドウに対してページの左右いっぱいまでの範囲を占めます。ブロック要素には、インライン要素やテキストだけでなく、他のブロック要素までも含むことができるものがあります。 代表的な要素に、div要素, form要素, h1~h6要素, p要素, table要素などがあります。
インライン要素のインライン(inline)とは「行内」を意味し、インライン要素は行の中の文字に論理的な意味を持たせたり修飾するのに使用します。 インライン要素は、その要素内にインラインレベルの要素を含むことはできますが、インライン要素の中にブロック要素を含むことはできません。代表的な要素に、a要素, em要素, img要素, span要素, strong要素などがあります。さらにインライン要素は、置換要素と非置換インライン要素の 2つに細分化されます。
CSSプロパティの適用対象でみるブロック要素とインライン要素の比較です。(出典:http://www.mozilla.gr.jp/standards/webtips0015.html#c1_4)
| ブロックレベル要素 | インライン要素 | |
|---|---|---|
| 高さ(height) | 指定可 | 指定不可 |
| 幅(width) | 指定可 | 指定不可 |
| 左右のマージン(margin) | 要素の左右に存在 | 最初の文字の左側と、最後の文字の右側に存在 |
| 左右のパディング(padding) | 要素の左右に存在 | 最初の文字の左側と、最後の文字の右側に存在 |
| 左右のボーダー(border) | 要素の左右に存在 | 最初の文字の左側と、最後の文字の右側に存在 |
| 上下のマージン(margin) | 要素の上下に存在 | 無視され、レイアウトに影響は無い |
| 上下のパディング(padding) | 要素の上下に存在 | 全ての行に存在し、ボーダーの位置に影響が出る |
| 上下のボーダー(border) | 要素の上下に存在 | 各行に存在するが、他の行に重なる場合がある |
要素の属性に入力される属性値などによって内容が置き換えられるもので、その寸法(サイズ)で認識される要素のことを指します。置換要素には、img要素, input要素, object要素, select要素, textarea要素の 5つがあります。
置換要素(img要素, input要素, object要素, select要素, textarea要素)ではないインライン要素のことを指します。
表組(テーブル)を生成するために使われる要素のことを指します。表関連要素には、caption要素, col要素, colgroup要素, table要素, tbody要素, td要素, tfoot要素, th要素, thead要素, tr要素の 10個があります。これら表関連要素を、さらに細かく分類すると、表のセル要素は、td要素, th要素が対象となり、表の行・行グループ要素は、tr要素, thead要素, tfoot要素, tbody要素が対象となり、表の列・列グループ要素は、col要素, colgroup要素が対象となり、表のキャプション(題名)は、caption要素が対象となります。そして、これら表の各部分をまとめているのが table要素になります。
positionプロパティによって配置("relative | absolute | fixed" のいずれか)を指定された要素のことを位置指定されていると言い、その内の "absolute | fixed" のいずれかを指定された要素のことを絶対位置決め(absolute positioning)の要素と言います。これに対して、"relative" を指定された要素を相対位置決め(relative positioning)の要素とも言います。positionプロパティは、CSS2.1 の仕様よりすべての要素に適用可能です。
リストを生成するための要素のことを指します。リスト要素には、dd要素, dir要素, dl要素, dt要素, li要素, menu要素, ol要素, ul要素の 8個があります。 さらにリストの項目部分となるリスト項目要素に分類され、li要素、および displayプロパティでリスト要素の項目にする "list-item" の値を指定された要素が、リスト項目要素にあたります。
最大の親要素のことを指します。 (X)HTML文書は、すべて樹形図のような構造(木構造・ツリー構造と呼ばれる)になっており、そこには必ず、すべての内容を包含している html要素が存在します。この最大の親要素のことをルート要素と呼びます。そして、ルート要素の第一の子要素が body要素であり、文書そのものの内容すべてが body要素に包含されます。CSS において、html要素と body要素は例外処理の多い特殊な扱いになります。