Olá Lucas,
Tudo bem!?
Não sei o que está acontecendo a turma não está respondendo mais. Eu tb estou com umas dúvidas e não está rolando resposta. rsrs
Mas quanto ao teu questionamento eu entendo que pela lógica, é necessário que a lista seja um componente irmão do componente atual.
Por exemplo:
Na primeira situação o
é um elemento irmão do input do tipo checkbox.
Se vc tentar fazer a mesma coisa com a ul separada por exemplo em outra div, não irá funcionar.
Então a estrutura precisa ser:
<elemento pai>
<input type="checkbox" />
<label></label>
<ul></ul>
</elemento pai>
Se fizermos com elementos envolvidos por outros tipos de container não funcionará:
<elemento pai>
<input type="checkbox" />
<label></label>
</elemento pai>
<elemento pai2>
<ul></ul>
</elemento pai2>
Desse jeito eu entendo que não funciona.