首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS选择器第n个子对象

CSS选择器第n个子对象
EN

Stack Overflow用户
提问于 2013-10-17 17:48:08
回答 3查看 384关注 0票数 1

我正面临着写一个稍微复杂的CSS选择器的问题。

我想选择一个带有“'btn-group'”的div,其中包含类,而不是'open'

所以我有这样的东西:

代码语言:javascript
复制
div[class*='btn-group']:not([class='open'])

现在的问题是,大约有5-6个元素符合上述条件。但我想选择第一个。我如何做同样的事情呢?

我更喜欢使用nth-child..

EN

回答 3

Stack Overflow用户

发布于 2013-10-17 17:49:44

关于:div[class*='btn-group']:not(.open):first-of-type

编辑如果您将<div class="btn-group open"></div>作为第一个子项,则此技巧不起作用...(正如下面的@Jukka所解释的)一个基于JS的技巧将会起作用,tho:

代码语言:javascript
复制
$("div[class*='btn-group']").not(".open").first()
    .css({...});

    // OR add a class
    // .addClass("class");

http://jsfiddle.net/teddyrised/LdDCH/

票数 6
EN

Stack Overflow用户

发布于 2013-10-17 17:56:43

试着这样做

代码语言:javascript
复制
div [class*='btn-group']:not([class='open']):nth-child(1) {
    color:Red;
}

使用此选项,您可以选择第一个子项

Working Fiddle

票数 2
EN

Stack Overflow用户

发布于 2013-10-17 18:07:14

你不能。CSS选择器不能以这种方式使用。但是,如果您提供一个更具体的HTML上下文(包括div元素的容器和标记所遵循的模式的描述),那么在某些假设下可能会有一种工作方式。

特别是,:nth-child:nth-of-type只测试元素是否是其父元素的第*n*个子元素,或者是它的第n*个子元素。例如,它不考虑类;它不是“类的第n个”选择器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19423330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档