プロパティカラーのcssで2回スタイル設定された要素があります。より具体的なセレクターは、色:赤、他の色:黒を提供します。実際に表示される結果では、黒が表示されます。
要素を調べて計算されたスタイルを見ると、黒の色を与える線が打ち出されており、赤は打ち出されていないことがわかります。ただし、そこでも、それぞれの線が打ち消されているにもかかわらず、結果の色は黒であることが示されています。
!importantを使用しても、まったく同じように見えます。なぜそうなるのか誰かが知っていますか?
プロパティカラーのcssで2回スタイル設定された要素があります。より具体的なセレクターは、色:赤、他の色:黒を提供します。実際に表示される結果では、黒が表示されます。
要素を調べて計算されたスタイルを見ると、黒の色を与える線が打ち出されており、赤は打ち出されていないことがわかります。ただし、そこでも、それぞれの線が打ち消されているにもかかわらず、結果の色は黒であることが示されています。
!importantを使用しても、まったく同じように見えます。なぜそうなるのか誰かが知っていますか?
CSSはカスケードスタイルシートであるため、要素の最後のコードを適用します。
<p>TEST</p>
p{color:red;!important}
p{color:blue;}
したがって、p要素の色は青になります。これはcssの正常な動作です。
ただし、CSSはさまざまなセレクターを優先します。
問題のライブプロトタイプ:http://jsfiddle.net/2YMD3/2/
ここでcssの優先度を確認できます