@Sp1keazyYT

Как при нажатии на checkbox менять стили не label, а div блока, в котором находится checkbox?

Добрый день. Имеется следующий код:

В стилях у меня прописано:
.checkbox-new-postr input[type=checkbox]:checked + label{
	color: white;
	background: #e08543;
}

Это означает, что вместе с активным checkbox у меня будут применяться стили к label. А теперь как этот код переработать, чтобы при активации checkbox у меня применялись стили (выше) на блок div с классом .checkbox-new-postr?
  • Вопрос задан
  • 1973 просмотра
Решения вопроса 1
Speik
@Speik
Developing is on way
В CSS нет родительских селекторов. Решение возможно через .parentNode JavaScript

'use strict';
document.addEventListener('DOMContentLoaded', () => {

    let checkbox = document.querySelector('label[for="aux_prem"]');

    checkbox.addEventListener('click', function()
    {
    	let parent = this.parentNode;
    	
    	( !parent.classList.contains('selected') ) ?
    			parent.classList.add('selected'):
    			parent.classList.remove('selected');
    });

});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы