首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >CSS3选择器问题,除了第一个选择

CSS3选择器问题,除了第一个选择
EN

Stack Overflow用户
提问于 2011-02-21 20:12:02
回答 4查看 81.1K关注 0票数 101

有了下面的标记,我想要一个CSS选择器来选择除了每个选项div中的第一个选择菜单之外的所有菜单-其中可能有很多:

代码语言:javascript
复制
<div class="options">
    <div class="opt1">
        <select title="Please choose Warranty">
            <option value="">Select Waranty</option>
            <option value="1">1 year guarantee</option>
            <option value="2">3 year guarantee</option>
        </select>
    </div>
    <div class="opt2">
        <select title="Please choose Color">
            <option value="">Select Color</option>
            <option value="1">Red</option>
            <option value="2">Blue</option>
        </select>
    </div>
    <div class="opt3">
        <select title="Please choose Size">
            <option value="">Select Size</option>
            <option value="1">Small</option>
            <option value="2">Big</option>
        </select>
    </div>
</div>

我在Prototype中使用了这个,它几乎完全支持css3选择器,所以不受浏览器支持的影响。

初始选择器如下所示:

代码语言:javascript
复制
div.options div select

我已经在nth-child:not(:first-child)上尝试了几个变体,但似乎不能让它工作。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-02-21 20:17:33

请参阅:http://jsfiddle.net/uDvEt/1/

代码语言:javascript
复制
.options > div:not(:first-child) select { background:yellow;}
票数 161
EN

Stack Overflow用户

发布于 2011-02-21 20:19:36

在使用:not(:first-child)时,您需要选择选项divs而不是selects,因为每个select都是其父div的第一个(也是唯一一个)子级

代码语言:javascript
复制
div.options > div:not(:first-child) > select

:not(:first-child)的替代方法是使用起始偏移量为2的:nth-child(),如下所示:

代码语言:javascript
复制
div.options > div:nth-child(n + 2) > select

另一种选择是使用通用兄弟组合器~ (受IE7+支持):

代码语言:javascript
复制
div.options > div ~ div > select
票数 57
EN

Stack Overflow用户

发布于 2020-04-03 05:26:35

.options > div:nth-child(n+2) select

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

https://stackoverflow.com/questions/5065766

复制
相关文章

相似问题

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