是否有所有兄弟姐妹选择器?

时间:2012-10-20 19:56:54

标签: css css3 css-selectors siblings

  

可能重复:
  CSS all inclusive sibling selector

CSS3有一个adjacent sibling selector +和一个general sibling selector ~。是否可以选择所有兄弟姐妹? (“常规”选择器实际上只选择跟随兄弟姐妹)

例如,在this example中,我希望所有非悬停的a-tags变小,而不仅仅是跟随悬停的标签。

HTML

<a href='#'>Item 1</a>
<a href='#'>Item 2</a>
<a href='#'>Item 3</a>

CSS

a { font-size: 15px; }
a:hover ~ a { font-size: 12px; }​

2 个答案:

答案 0 :(得分:3)

不,选择器3中没有这样的兄弟选择器。

虽然您可以使用:not()伪类选择未悬停的元素(a:not(:hover)),但您无法相对于其他a选择所有这些元素目前正在徘徊或只是在它被徘徊时。

答案 1 :(得分:2)

如果元素包含在公共父级中,那么您可以近似类似的东西:

#parent a {
    font-size: 2em;
}

#parent:hover a {
    font-size: 1em;
}

#parent:hover a:hover {
    font-size: 2em;
}

JS Fiddle proof-of-concept

但是,正如Boltclock所说,不幸的是,没有(当前的)基于兄弟的CSS组合器/选择器解决方案。