Home > 実践 Web Standards Design p.116

実践 Web Standards Design p.116

  • Last Modified: 2008年11月30日 11:07

このページは、実践 Web Standards Design が第 1 刷・第 2 刷から第 3 刷となる際に、仕様自体の変更によって内容を修正した分について公開しています。

3.3/CSS管理のコツ

の順位で適用されます。

たとえば制作者スタイルシートが全く提供されていない場合、あるいは制作者スタイルシート内でスタイルの指定がないセレクタにおいては、利用者のユーザースタイルシートの内容が適用され、利用者の好みのスタイルで表示されますし、また利用者がユーザースタイルシートを準備していなければUAのデフォルトスタイルシートが適用されます。 もちろん、(102ページで説明した!importantの指定がユーザースタイルシートにないという前提では)制作者スタイルシートが提供されていれば、そのスタイルが適用されます。

このデフォルトスタイルシートの適用についてはCSS 2.1Assigning property values, Cascading, and Inheritance6.4 The cascadeにて仕様が示されており、「ユーザーエージェントは他のすべてのスタイルシートに優先してデフォルトスタイルシート(あるいはそのように振舞うもの)を適用しなければならない」※4とされています(他のスタイルシートに優先して適用されますが、重要度としては低いので、ユーザースタイルシートや制作者スタイルシートのスタイル指定で上書きされます)。

URL CSS 2.1 [Assigning property values, Cascading, and Inheritance] - 6.4 The cascade
http://www.w3.org/TR/CSS21/cascade.html#cascade

UAが適用するべきデフォルトスタイルシートのサンプルはCSS 2.1Default style sheet for HTML 4にて示されています。

URL CSS 2.1 [Default style sheet for HTML 4]
http://www.w3.org/TR/CSS21/sample.html

このサンプルがあるために、たとえばem要素でマークアップされた要素の文字はほとんどのブラウザでイタリック体で表示され、strong要素でマークアップされた要素の文字はより太い文字で表示されるのです。

ただし、サンプルはあくまで参考に過ぎず、必ず守らなければならないものではありません。 UAによっては文字をイタリック体や太字で表示できないものも考えられます。 このサンプルは最小限の指定しかなされていないため、このサンプルにない部分はUAごとに独自にデフォルトスタイルシートが作成されています。 制作者スタイルシートやユーザースタイルシートを適用させていない(X)HTML文書をIEやFirefoxやOperaやSafariでそれぞれ表示してみると、微妙にレイアウトが異なるのはこのためです。

また、このサンプルはCSS2のものと現時点で勧告候補であるCSS 2.1のものでも相違点がありますので、サンプルで定義されている部分であっても、そのUAがどのCSSに準拠しているかで結果が変わってくることになります。

URL CSS2 [A sample style sheet for HTML 4.0]
http://www.w3.org/TR/CSS2/sample.html

Home > 実践 Web Standards Design p.116

Tag Cloud
Categories
Archives
Search
Feeds
  • Feed by feedburner.jp

Return to page top