Ответы на вопросы на должность Frontend разработчика.
В следующем списке типы селекторов расположены по возрастанию специфичности:
h1
) и псевдоэлементов (например, ::before
).example
), селекторы атрибутов (например, [type="radio"]
) и псевдоклассов (например, :hover
)#example
)Универсальный селектор (*
), комбинаторы (+
, >
, ~
, ' '
) и отрицающий псевдокласс (:not()
) не влияют на специфичность. (Однако селекторы, объявленные внутри :not()
, влияют)
Стили, объявленные в элементе (например, style="font-weight:bold"
), всегда переопределяют любые правила из внешних файлов стилей и, таким образом, их специфичность можно считать наивысшей.
Расчёт специфичности