ЕСК · Инструменты · Как браузер решает, чей стиль победит
Большинство разработчиков учат только «больше классов — выше специфичность» и никогда не узнают, что на самом деле проверяется раньше. Ниже — настоящий каскад целиком, шаг за шагом: каждый пример реально применяет два конфликтующих CSS-правила к настоящему DOM-элементу ниже и честно показывает, кто победил — результат читается напрямую из браузера, а не утверждается на словах.
Когда два правила указывают разное значение для одного и того же свойства одного и того же элемента, браузер проверяет их по очереди — и специфичность стоит только на третьем месте:
Происхождение — стили браузера по умолчанию проигрывают стилям автора страницы почти всегда; это происходит ещё до всего остального.
Важность — правило с !important побеждает любое правило без него, независимо от специфичности и порядка. Дальше специфичность и порядок сравниваются отдельно — только между правилами одинаковой важности.
Специфичность — то, чему обычно учат первым и единственным. Шаги 2 и 4 ниже показывают её вживую.
Порядок объявления — последний тай-брейк: при полностью равной специфичности побеждает то правило, что объявлено позже.
Нужно больше, чем инструмент?
Карьера в IT, разбор проекта, поиск процесса под вашу задачу — 30 минут, бесплатно и без обязательств.