jquery - css选择器理解

标签 jquery css jquery-selectors css-selectors

我正在尝试选择第一个直系 child <p> <li> 的元素包含立即 <ul> 的元素 child 。

li>ul:parent>p:first-child

是我尝试过的,认为它会得到 li与立即ul然后回到原来的li:parent 一起选择器然后选择立即 p的 child 是第一个。

例如

<ul>
    <li>
        <p>SELECT ME!</p>
        <ul>
            <li><!--some more stuff-->
        </ul>
    </li>
</ul>

根据评论我应该说我在 jQuery 选择器中使用它并且我找到了 :parent jQuery API 页面中的选择器。

最佳答案

您遇到的问题是 li > ul:parent将选择 <ul>元素,但指定 > p:first-child不匹配任何东西,因为你的 p元素在 li 内, 不是 <ul> 的直接后代.

您可以使用 jQuery 的 :has() 为此选择器:

$('li:has(ul) > p:first-child').css('background-color', 'red');

这是一个 jsFiddle demo .

不幸的是,我认为这对于纯 CSS 是不可能的。

关于jquery - css选择器理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15357517/

相关文章:

css - 如何在 React 组件中围绕文本创建动态数量的圆圈?

javascript - jQuery 字符串语法

jquery 过滤一个选择,其选项包含一些字符串

jquery - IE7 中的自定义(ish)jQuery Accordion 菜单错误

javascript - 在javascript中将多个打乱的数组连接成一个大的随机数组

javascript - 将自定义 Jquery 插件与 requireJS 一起使用

css - 显示 :block inside display:inline

javascript - 如何缩短长重复路径和组合语句

javascript - 追加后访问元素

javascript - jquery移动过渡幻灯片页面内容第二次不刷新到原来