Nếu một <p>
phần tử đứng ngay sau một <div>
phần tử, điều đó không có nghĩa là <p>
phần tử đó đứng trước một <div>
phần tử sao?
Chính xác. Nói cách khác, div + p
là một tập hợp con thích hợp của div ~ p
- bất cứ thứ gì khớp với cái trước cũng được khớp với cái sau, bởi cần thiết.
Sự khác biệt giữa +
và ~
là ~
đối sánh với tất cả các anh chị em sau đây bất kể họ ở gần nhau từ phần tử đầu tiên, miễn là cả hai đều có chung cha mẹ.
Cả hai điểm này đều được minh họa ngắn gọn nhất bằng một ví dụ duy nhất, trong đó mỗi quy tắc áp dụng một thuộc tính khác nhau. Lưu ý rằng quy tắc p
ngay sau div
quy tắc đã áp dụng cả hai quy tắc:
div + p {
color: red;
}
div ~ p {
background-color: yellow;
}
<section>
<div>Div</div>
<p>Paragraph</p>
<p>Paragraph</p>
<p>Paragraph</p>
</section>
<section>
No div
<p>Paragraph</p>
<p>Paragraph</p>
<p>Paragraph</p>
</section>
Nhưng dù sao, tôi đang tìm một bộ chọn nơi tôi có thể chọn một phần tử được đặt ngay trước một phần tử nhất định.
Thật không may, vẫn chưa có một .
+
là tiếp theo ngay lập tứcp
phần tử và~
là tất cả của tiếp theop
yếu tố (sau mỗidiv
phần tử)