В CSS существует иерархия разработки таблиц стилей: разработчик веб-страницы пишет таблицу стилей, читатель пишет еще одну, а затем идет таблица стилей браузера по умолчанию. Известно, что порядок приоритета применения таблиц стилей: разработчик, читатель и браузер.
Однако также известно, что читатель может переопределить стиль, назначенный разработчиком, добавив !important к объявлению свойства:
h1 {
color: white !important;
}
Однако что произойдет, если разработчик тоже добавит !important в конце объявления своего свойства. Какой из них имеет преимущество в данном случае? Кроме того, есть ли в таблице стилей браузера добавление !important к какому-либо объявлению свойства? Если да, то как это влияет на стиль веб-страницы?
Книга, которую я использую для изучения HTML и CSS, Head First HTML and CSS, 2-е издание О'Рейли, говорит мне, что я ничего не могу сделать, чтобы переопределить стиль читателя (или, по крайней мере, это то, что я сделал вывод — может быть, что Я неправильно понял). Я не пытался возиться с таблицей стилей «читателя» просто потому, что не знаю, как это сделать.
Если два правила, влияющие на элемент, содержат флаг !important, он должен вернуться к стандартным правилам специфичности , не обязательно последним !important. (Есть еще немного, прочитайте ссылку на документы)
Так как это немного изменилось за эти годы, я рекомендую изучить современный каскад. Однако для !important объявлений происхождение пользовательского агента превосходит происхождение читателя, которое превосходит происхождение автора.






Как вы уже упоминали, вы имеете в виду Head First HTML and CSS, 2nd edition by O'Reilly, важно отметить, что он выпущен в 2012 году, и за год !important правила изменились.
Я бы посоветовал вам просмотреть некоторые статьи.
Как предложил @DBS в комментарии,
Если два правила, влияющие на элемент, включают флаг
!important, он должен вернуться к стандартным правилам специфичности , не обязательно последним!important
Далее следует эта статья
По умолчанию правила CSS в авторской таблице стилей переопределяют правила в пользовательской таблице стилей. Однако, чтобы создать баланс сил между авторами и пользователями, !important правила в пользовательской таблице стилей перевешивают !important правила в авторской таблице стилей. Эта функция CSS предназначена для доступности. Пользователи, которым требуются более крупные шрифты, определенные сочетания цветов или другие требования из-за ограничений, связанных со зрением, могут сохранить контроль над представлением веб-страницы.
Надеюсь, поможет!
Спасибо, ответ очень помог. Я понимаю, что книга довольно старая, поэтому я могу не догнать некоторые правила. Не подскажете, где искать разработанные после 2012 года? Например, как насчет веб-документов MDN?
Да, веб-документы MDN — это идеальное место, чтобы быть в курсе правил, даже в будущем, они поддерживаются в хорошем состоянии.
Последнее !important правило будет применяться