Специфика селектора рассчитывается следующим образом:
- подсчитывает количество атрибутов идентификатора в селекторе (= a)
- подсчитывает количество других атрибутов и псевдоклассов вселектор (= b)
- подсчитывает количество имен элементов в селекторе (= c)
- игнорирует псевдоэлементы.
Объединяет три числа abc(в системе счисления с большой базой) дает специфичность.
Выбор элемента: 0, 0, 1 (1)
Выбор класса 0,1, 0 (10)
Селектор идентификатора 1, 0, 0 (100)
CSS:
.blue {
font-color:blue;
}
#red {
font-color:red;
}
HTML:
<div class="blue">
<div class="blue">
<div class="blue">
<div id="red">this text will be red</div>
</div>
</div>
</div>
Лучший способ объяснить это - это то, что сделал этот парень: CSS: Войны специфичности