Есть разные способы переопределения свойств. Предполагая, что у вас есть
.left { background: blue }
например, любое из следующего может переопределить его:
a.background-none { background: none; }
body .background-none { background: none; }
.background-none { background: none !important; }
Первые два «выигрывают» по специфике селектора; третий побеждает !important
тупым инструментом.
Вы также можете организовать свои таблицы стилей так, чтобы, например, правило
.background-none { background: none; }
выигрывает просто по порядку, то есть, будучи после иначе одинаково «мощными» правил. Но это накладывает ограничения и требует от вас осторожности при любой реорганизации таблиц стилей.
Все это примеры CSS Cascade , важной, но часто неправильно понимаемой концепции. Он определяет точные правила разрешения конфликтов между правилами таблицы стилей.
PS Я использовал left
и background-none
как они использовались в вопросе. Это примеры имен классов, которые не следует использовать, поскольку они отражают конкретную визуализацию, а не структурные или семантические роли.
left
и чего следуетbackground-none
избегать?