有没有“以前的兄弟”CSS选择器?
+
是为下一个兄弟姐妹。 对于以前的兄弟姐妹有没有相同的东西?
不,没有“以前的兄弟姐妹”选择器。
在一个相关的说明中, ~
是一般继任兄弟姐妹(意味着这个元素在这之后,但不一定是在之后),并且是一个CSS3选择器。 +
是用于下一个兄弟,并且是CSS2.1。
请参见选择器级别3和5.7中的相邻兄弟组合器。级联样式表级别2修订1(CSS 2.1)规范中的相邻兄弟选择器。
我找到了一种方式来设计所有以前的兄弟姐妹(与~
相反),这可能取决于您需要的功能。
假设你有一个链接列表,当它悬停在一个链接上时,所有以前的链接都会变成红色。 你可以这样做:
/* default link color is blue */
.parent a {
color: blue;
}
/* prev siblings should be red */
.parent:hover a {
color: red;
}
.parent a:hover,
.parent a:hover ~ a {
color: blue;
}
<div class="parent">
<a href="#">link</a>
<a href="#">link</a>
<a href="#">link</a>
<a href="#">link</a>
<a href="#">link</a>
</div>
选择器级别4引入:has()
(以前是主题指示符!
),这将允许您选择以前的兄弟:
previous:has(+ next) {}
......但在撰写本文时,浏览器支持还有一段距离。
链接地址: http://www.djcxy.com/p/3903.html