CSS3选择器根据firstchild选择父级

Posted

技术标签:

【中文标题】CSS3选择器根据firstchild选择父级【英文标题】:CSS3 selector selecting parent based on firstchild 【发布时间】:2011-06-14 05:16:22 【问题描述】:

是否有一些我可以编写的 CSS3 选择器来执行以下操作:

选择第一个孩子是“A”的“LI”?

【问题讨论】:

【参考方案1】:

不,很遗憾不是,因为您将根据其后代来选择祖先。遗憾的是,这与级联样式表的“级联”相悖。虽然这是一个我会非常感激的功能,如果它有可能的话。

虽然给定标签“jquery-selectors”,但您可以在 jQuery 中使用:

$('li:has("> a:first-child")')...

Verified with a JS Fiddle demo.

CSS 3 短暂地有一个:contains() pseudo-selector可能对此有用,但似乎已被删除。


编辑以合并@patrick dw 的更正(从$('li:has("> a")')... 到上面的示例。 编辑 将演示 URL 更新为更正 jQuery 选择器的演示。

【讨论】:

差不多。您还需要:first-child 选择器。 $('li:has("> a:first-child")') @patrick dw:我考虑到当我把它放在一起然后想不,> 意味着第一个孩子...... 是的,我是 一个白痴... =) 感谢您的捕捉和纠正,非常感谢。 对于我声称自己是“白痴”的评论获得赞成票,这很奇怪。即使所说的说法是完全准确的...... =S 我以前没有使用过这样的选择器。非常好,谢谢。 :) @Aishwar,我真的应该链接到jQuery API for the :has() pseudo-selector,但我忘记了。见上面的评论... =b 另外,不客气,我很高兴能得到帮助 =)

以上是关于CSS3选择器根据firstchild选择父级的主要内容,如果未能解决你的问题,请参考以下文章

CSS3选择器入门

CSS3中的选择器

为啥 jQuery 不提供 .firstChild 方法?

jQuery 真正支持哪些 CSS3 选择器,例如:nth-last-child()?

CSS3 选择器

css3选择器怎样选择元素?