Выбор ответа Middle Архитектура CSS обновлено

Стили вне слоёв

Вопрос

Есть правило в слое @layer base { a { color: red; } } и правило без слоя a { color: blue; }, подключённое раньше. Какого цвета ссылка?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Синяя: объявления вне слоёв сильнее объявлений в любом слое. Для обычных (не !important) объявлений стили вне слоёв считаются как бы самым последним слоем и побеждают все слои независимо от порядка в файле.

Варианты ответа

  1. Красная: правило в слое подключено позже и поэтому побеждает
  2. Красная: стили в слоях всегда сильнее обычных стилей вне слоёв
  3. Синяя: объявления вне слоёв сильнее объявлений в любом слоеправильный ответ
  4. Зависит от браузера: порядок слоёв и обычных стилей не стандартизован

Разбор

Для обычных (не !important) объявлений стили вне слоёв считаются как бы самым последним слоем и побеждают все слои независимо от порядка в файле. Поэтому позже подключённое правило в слое проигрывает. Поведение стандартизовано и одинаково в основных браузерах.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме