let_NIK
@let_NIK
веб розробка

Как скрыть блок, внутри которого находится блок с определённым классом?

Есть вот такая конструкция:

<div class="item">
	<div>
		<div>

		</div>
	</div>
</div>
<div class="item">
	<div>
		<div class="hidden">

		</div>
	</div>
</div>

Нужно скрыть блок .item в котором находится блок .hidden.
  • Вопрос задан
  • 86 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
document.querySelectorAll('.item .hidden').forEach(n => {
  n.closest('.item').style.display = 'none';
});

или

for (const n of document.getElementsByClassName('item')) {
  if (n.querySelector('.hidden')) {
    n.style.display = 'none';
  }
}

UPD. Наконец-то дождались, теперь js тут использовать необязательно:

.item:has(.hidden) {
  display: none;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы