Как наследовать свойство CSS от прародителей

#html #css #frontend

#HTML #css #интерфейс

Вопрос:

Могу ли я каким-либо образом наследовать свойство CSS, такое как цвет фона, от прародителя элемента, например, у меня есть <div> тег внутри <main> тега, который находится внутри <body> тега, я хочу наследовать свойство цвета фона из <body> тега, минуя свойство <main> цвета фона тега. Как я могу добиться этого, используя только CSS?

Комментарии:

1. Ответ отрицательный; вы не можете наследовать свойства от предка, который не является родительским. (Если только свойство не наследуется полностью по дереву, что, судя по всему, не то, что вы хотите)

2. Нет, я не наследую полностью, как я уже упоминал, я использовал другой цвет фона для body и другой для main тега, и я хочу наследовать цвет фона тега body, но похоже, что это невозможно, как вы сказали

3. Текущий ответ @arlot подводит итог рекомендуемой реализации

Ответ №1:

К внуку и прародителю можно добавить несколько классов.

 <div class="A B">
  <div class="C">
    <div class="B D">
      hello
    </div>
  </div>
</div>
  

или

 <div class="A">
  <div class="B">
    <div class="A C">
      hello
    </div>
  </div>
</div>
  

Ответ №2:

Вы можете использовать ключевое слово inherit css . Вот пример

 <body style="background-color: burlywood;">
<main style="background-color: inherit;">   
  <div style="background-color: inherit;">
  </div>
</main>