I die folgenden Definitionen Im mit (von der CSS2 spec angepasst http://www.w3.org/TR/CSS21/cascade.html#specificity)Wie funktionieren CSS-Spezifitätsstufen zwischen Klassen/Pseudo-Klassen und Elementen/Pseudo-Elementen?
- a = auf einem Element, das die Art-Attribut
- b = Anzahl der ID-Attribute
- c = Anzahl von Attributen (Klassen) und pseudo-Klassen (: Link,: Hover)
- d = Anzahl von Elementen und Pseudo-Elementen (: first-line,: first-letter)
Mit den folgenden Arten (meine Berechnungen nach rechts):
.content {color: green;} /* a=0 b=0 c=1 d=0 -> 0,0,1,0 */
.content:hover {color: yellow;} /* a=0 b=0 c=2 d=0 -> 0,0,2,0 */
li {color: orange;} /* a=0 b=0 c=0 d=1 -> 0,0,0,1 */
li:first-line {color: pink;} /* a=0 b=0 c=0 d=2 -> 0,0,0,2 */
und die folgenden HTML
<li class="content">The first line</li>
Wenn ich es in einem Browser öffnen, ist die Textzeile rosa. Ich dachte, es wäre grün und beim Schweben wäre es gelb. Ich dachte, dass Elemente und Pseudoelemente (das d in der Berechnung) weniger Gewicht haben als Klassen und Pseudoklassen (das c in den Berechnungen).
Mögliches Duplikat von [Die Spezifität von First-Line und First-Child in CSS?] (http://stackoverflow.com/questions/20555878/the-specificity-of-first-line-and-first-child-in-css) –