REDLINE MAGAZINE | CSSビギナー向け 陥りがちな罠Vol.03REDLINE MAGAZINEトップページへ

すべてのエントリを見る

CSSビギナー向け 陥りがちな罠Vol.03

ソースをいじってもまったくスタイルが反映されない!編

cssは基本的には後から読み込んだスタイルを優先的に適用する仕組になっている。が、それには前提があって、スタイルの個別性(特殊性)が同じ場合に後から記述した内容が適用されるというもの。

※ここから先は外部CSSファイルで見栄えを整えているという前提で話を進めます。

継承やカスケーディングという考え方についてはCSSとうまく付き合う予備知識というエントリに書いたとおり。それをさらに掘り下げると上に書いたスタイルの個別性(特殊性)というものにたどり着く。

CSSには指定したスタイルが競合するとどれを優先するのかを、その個別性が高いものを使いますというルールがある。泣く子も黙るWeb標準の教科書を持ってらっしゃる方は122ページ辺りの内容。これ、なんか一見してややこしそうだが、個別性を超簡単にまとめると・・・

個別性の計算方法

「*(全称セレクタ)」は個別性 → 0
「要素」は個別性 → 1
「classや疑似クラス」は個別性 → 10
「id」は個別性 → 100

これを元に個別性がいくらなのかを計算するだけの話。

例えば、『 div#header h1 』の個別性は?
div(要素)が1つ、#header(id)が1つ、h1(要素)が1つ、ということで、要素が2つとidが1つの計算。要素は「1」、idは「100」なので、1+100+1=102。個別性は102となる。

例えば、『 ul.test li.sample a 』の個別性は?
ul(要素)が1つ、.test(class)が1つ、li(要素)が1つ、.sample(class)が1つ、a(要素)が1つ。1+10+1+10+1=23。個別性は23となる。

これでどのスタイルを優先させるかを決めている。
ということで、「後から記述した内容が優先されるはずなのに言う事聞かない!」って場合にあれこれソースをいじって反映されない場合は、この個別性(特殊性)を調べてみると解決するかもしれない。

<< CSSに行き詰ったら | CSSビギナー向け 陥りがちな罠Vol.04 >>

トラックバック

このエントリーのトラックバックURL:
http://redline.hippy.jp/cgi/mt/mt-tb.cgi/119

このページの一番上へ

その他の情報など

最近のコメント

PHP オブジェクト指向の勉強
  • Red - 2010.01.08
  • hogepage - 2010.01.21
  • Red - 2010.01.22
  • - 2011.11.27
  • houseiii - 2011.11.27
Fireworks トリミング画像を一括書出 CS4編
  • Iper - 2009.06.27
  • Red - 2009.06.27
  • mala - 2011.11.17
  • Red - 2011.11.18
jQueryでボックスを上下左右中央に簡単配置
overflow を使用したボックス背景のこと
  • - 2007.12.13
  • Red - 2007.12.13
  • - 2007.12.13
  • Red - 2007.12.13
  • hj - 2011.09.23
IE6 → 透過PNG+overflow=混ぜるな危険(追記有)

メッセージを送る

こちらのメッセージ送信フォームは閉鎖させて頂きました。
御用の方は新しい方のブログ にコメント頂くか、 連絡用のフォーム もありますので、そちらからご連絡ください。