私のページには次のHTMLがあります。
<ul id="detailsList">
<li>
<input type="checkbox" id="showCheckbox" />
<label for="showCheckbox">Show Details</label>
</li>
<li>content ...</li>
<li>content ...</li>
<li>content ...</li>
<li>content ...</li>
<li>content ...</li>
</ul>
この HTML を変更できません。次の CSS を使用して、最初の LI を除いてすべての LI を非表示にしました
ul#detailsList li:nth-child(1n+2) {
display:none;
}
ここまでは順調ですね。私が今やりたいことは、純粋な CSS を使用して、チェックボックスがオンになっているときに、これらの非表示の LI を表示することです。これまでの私の最善の試みは
ul#detailsList li input#showCheckbox:checked + li {
display:block;
}
+ liは、親の兄弟ではなく、チェックボックスの直後の LI (つまり兄弟) のみを選択するため、明らかにこれは機能しません。
これは可能ですか?