Ogólny kombinator rodzeństwa (~) w CSS wygląda następująco:
.featured-image ~ p ( font-size: 90%; )
W tym przykładzie wybierasz wszystkie akapity w artykule, które pojawiają się po wyróżnionym obrazie (element z nazwą klasy „wyróżniony obraz”) i zmniejszasz je nieco font-size
.
Spowoduje to wybranie elementów na tym samym poziomie hierarchii. W tym przykładzie .featured-image
i p
elementy znajdują się w tej samej hierarchii. Jeśli selektor był kontynuowany po p
lub wcześniej .featured-image
, obowiązują normalne zasady. Więc .featured-image ~ p span
nadal wybierałbym zakresy, które są potomkami wszelkich .featured-image ~ p
dopasowań.
Specyfikacja selektorów poziomu 4 nazywa je „następującymi łącznikami rodzeństwa”.
Próbny
Oto kolejny przykład, który podkreśla wszystkie p
elementy następujące po img
:
img ~ p ( background-color: #FEF0B6; padding: 5px; )
Co spowoduje:
Dziwactwa
WebKit miał kiedyś dziwactwo polegające na tym, że nie można ich było używać z pseudoselektorami. Lubić:
input:checked ~ div ( /* Wouldn't work */ )
Nie znam dokładnych wersji przeglądarek, w których zostało to naprawione, ale zostało naprawione.
Więcej informacji
- Selektory dziecka i rodzeństwa
- Podobny do Adjacent Sibling Combinator.
- MDN Docs
Wsparcie przeglądarki
Chrom | Safari | Firefox | Opera | TO ZNACZY | Android | iOS |
---|---|---|---|---|---|---|
Każdy | 3+ | 1+ | 9+ | 7+ | Każdy | Każdy |