~
Селектор фактически General родственный комбинатор (переименован в Последующий-родственного комбинатора в селекторов Уровень 4 ):
Общий братский комбинатор состоит из символа «тильда» (U + 007E, ~), который разделяет две последовательности простых селекторов. Элементы, представленные двумя последовательностями, имеют одного и того же родителя в дереве документа, и элемент, представленный первой последовательностью, предшествует (не обязательно непосредственно) элементу, представленному второй.
Рассмотрим следующий пример:
.a ~ .b {
background-color: powderblue;
}
<ul>
<li class="b">1st</li>
<li class="a">2nd</li>
<li>3rd</li>
<li class="b">4th</li>
<li class="b">5th</li>
</ul>
.a ~ .b
соответствует 4-му и 5-му пунктам списка, потому что они:
- Являются ли
.b
элементы
- Братья и сестры
.a
- Появляются после
.a
в исходном порядке HTML.
Аналогично, .check:checked ~ .content
соответствует всем .content
элементам, которые являются родственными элементами .check:checked
и появляются после него.