首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >CSS无同级选择器

CSS无同级选择器
EN

Stack Overflow用户
提问于 2011-10-23 22:42:00
回答 3查看 25.7K关注 0票数 37

考虑下面的html:

代码语言:javascript
复制
<div>
    <div class="iwant" />
    <div class="idontwant" />
</div>
 <div>
    <div class="iwant" />
</div>

我感兴趣的是一个选择器(用于抓取内容,所以我不能修改html),它可以选择所有与idontwant类没有兄弟的iwant

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-10-23 22:43:37

没有同级选择器可以按类匹配(或不匹配)元素。

我能想到的最接近的选择器是

代码语言:javascript
复制
.iwant:only-child

但是这个选择器意味着,无论类型或类如何,作为父div的子元素,除了该div class="iwant"之外,不能有任何其他元素。不过,根据HTML的结构,这可能会满足您的需求,因此值得一试。但是,如果类名对您来说是一个问题,那么可能没有太多的解决方案,因为在CSS中没有一个:only-of-class伪类来按类过滤,而忽略其余的类。

票数 64
EN

Stack Overflow用户

发布于 2015-09-25 13:21:06

如果没有特定的兄弟项,就没有好的方法来确定项的目标。但是您可以使用.iwant:last-child来定位没有后续兄弟项的项。

示例:http://codepen.io/martinkrulltott/pen/YyGgde

票数 5
EN

Stack Overflow用户

发布于 2011-10-23 22:45:17

没有负面的同级CSS选择器。使用同级选择器设置新样式,然后在.idontwant重置样式

代码语言:javascript
复制
div.iwant {
    /*Set CSS here*/
    display: inline;
}
div.iwant ~ div.idontwant {
    /*Reset CSS*/
    display: block /* Default of DIV is block*/
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7866784

复制
相关文章

相似问题

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