Исследуя специфичность, я наткнулся на этот блог - http://www.htmldog.com/guides/cssadvanced/specificity/
В нем говорится, что специфичность - это система баллов для CSS. Он сообщает нам, что элементы приносят 1 балл, классы приносят 10 баллов, а идентификаторы приносят 100 баллов. Сверху также говорится, что эти баллы суммированы, и общая сумма зависит от специфики этого селектора.
Например:
body = 1 балл
body .wrapper = 11 баллов
body .wrapper #container = 111 баллов
Итак, используя эти точки, я ожидаю, что следующие CSS и HTML приведут к тому, что текст будет синим:
#a {
color: red;
}
.a .b .c .d .e .f .g .h .i .j .k .l .m .n .o {
color: blue;
}
<div class="a">
<div class="b">
<div class="c">
<div class="d">
<div class="e">
<div class="f">
<div class="g">
<div class="h">
<div class="i">
<div class="j">
<div class="k">
<div class="l">
<div class="m">
<div class="n">
<div class="o" id="a">
This should be blue.
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
Почему текст красный, если 15 классов равны 150 баллам по сравнению с 1 идентификатором, равным 100 баллам?
Очевидно, очки не просто суммируются; они связаны. Подробнее об этом читайте здесь - http://www.stuffandnonsense.co.uk/archives/css_specificity_wars.html
Означает ли это, что классы в нашем селекторе = 0,0,15,0
ИЛИ 0,1,5,0
?
(мои инстинкты говорят мне , что это первое, как мы знаем специфичность выглядит селектор как это: 0,1,0,0
)