因此,我有一組鏈接,並且只要它們是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 =層疊樣式表,所以它只有從上到下的選擇器。 –