因此,我有一组链接,并且只要它们是DOM中的兄弟,就想对这些链接应用样式[假设color: red;
]。举例来说,如果我有三个环节:CSS选择器:如何选择元素同胞和元素本身?
<a class="nav-link-primary">link</a>
<a class="nav-link-secondary">link</a>
<a class="nav-link-tertiary">link</a>
他们应该所有是红色的。
但是,如果我有这样的事情:
<a class="nav-link-primary">link</a>
<span>Lorem</span>
<a class="nav-link-secondary">link</a>
<a class="nav-link-tertiary">link</a>
那么只有最后两个链接应该是红色的,因为他们是兄弟姐妹。有没有可能用CSS做到这一点?
这里是我试过
.nav-link-primary ~ .nav-link-primary,
.nav-link-primary ~ .nav-link-secondary,
.nav-link-primary ~ .nav-link-tertiary,
.nav-link-secondary ~ .nav-link-primary,
.nav-link-secondary ~ .nav-link-secondary,
.nav-link-secondary ~ .nav-link-tertiary,
.nav-link-tertiary ~ .nav-link-primary,
.nav-link-tertiary ~ .nav-link-secondary,
.nav-link-tertiary ~ .nav-link-tertiary {
color: red;
}
.nav-link-primary:first-child + .nav-link-secondary{
color: red;
}
.nav-link-secondary:first-child + .nav-link-primary{
color: red;
}
<a class="nav-link-primary">link</a>
<a class="nav-link-secondary">link</a>
<a class="nav-link-tertiary">link</a>
这里是我的CodePen链接:http://codepen.io/obliviga/pen/jryPgO
这没有第一个链接的红色,即使它有一个兄弟在第一部分选择器中定义。有任何想法吗?
兄弟选择器'〜'从HTML结构的顶部到底部选择兄弟。而不是其他方式。 CSS =层叠样式表,所以它只有从上到下的选择器。 –