Я пытаюсь создать макет CSS, в котором я использую набор классов для определения цветовой схемы элементов и их содержимого.
Я столкнулся с небольшой проблемой каскадирования (я думаю) - это кажется мне очень элементарной проблемой, но я просто не могу найти простой способ сделать это.
.red-content p {
color: red;
}
.blue-content p {
color: blue;
}
<div class="blue-content">
<div class="inner">
<p>Blue</p>
</div>
<div class="red-content">
<div class="inner">
<p>Red</p>
</div>
</div>
</div>
Вот кодекс, который иллюстрирует мою проблему: https://codepen.io/tomhayes/pen/OJVqKoo
По сути, синий текст должен быть синим, а красный текст должен быть красным, но правила конфликтуют и делают весь текст синим.
Я не могу использовать порядок правил CSS, чтобы добиться этого, потому что порядок элементы будут меняться, и я пытаюсь избежать необходимости использовать >
, потому что элементы иногда должны быть вложены в несколько уровней.