相邻兄弟选择器(+)用于选中紧邻且同级的后一个元素,语法为A + B;区别于~选择器,+仅匹配紧邻下一个,而~匹配后续所有同级元素;IE7+支持,需确保HTML结构符合紧邻同级要求。
当两个元素在HTML中是同级且紧挨着出现时,可以用CSS相邻兄弟选择器(+)精准控制后一个元素的样式,无需额外加类名或JS干预。
语法为 A + B,表示“紧跟在A元素后面、且与A同级的B元素”。注意两点:必须是**紧邻**、必须是**同级**。
h2 + p:选中紧跟在后面的,跳过中间有其他标签的情况.item + .item:常用于列表项之间添加分隔线或间距div + span不会选中div内部的span
省去手动加class,让样式更语义化、更易维护。
h2 + p { text-indent: 0; }
label后的input顶部留空label + input { margin-top: 0.5em; }
.nav-item + .nav-item::before { content: "|"; margin: 0 8px; color: #999; }
+只匹配**紧邻的下一个**,~匹配**后面所有符合条件的同级元素**。
h3 + p → 只影响紧跟其后的那个
h3 ~ p → 影响该之后所有同级(中间可隔其他标签)+更精确,避免误伤相邻兄弟选择器IE7+就已支持,现代项目可放心使用,但需注意HTML结构是否符合预期。
+不会生效,此时需配合JS或改用:has()(较新,兼容性有限)div > p + ul + li,可读性和维护性会下降