CSS:如何选择父母的兄弟

参见英文答案 > Is there a CSS parent selector?27个
我的页面中有以下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,除了第一个

ul#detailsList li:nth-child(1n+2) {
    display:none;
}

到现在为止还挺好.我现在要做的是在勾选复选框时使用纯CSS显示隐藏的LI.到目前为止,我最好的尝试是

ul#detailsList li input#showCheckBox:checked + li {
    display:block;
}

显然这不起作用,因为li只会在复选框之后立即选择LI(即兄弟姐妹),而不是父母的兄弟姐妹.

这有可能吗?

解决方法

你不能用CSS做到这一点但是

您可以尝试使用jQuery

$("#showCheckBox").click(function(){
    $(this).parent().siblings().show();
});

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效