P粉0989790482023-08-24 11:58:20
我找到了一种方法来设计所有以前的同级(与 ~
相反)的样式,该方法可能会根据您的需要而起作用。
假设您有一个链接列表,当鼠标悬停在其中一个链接上时,之前的所有链接都应变为红色。你可以这样做:
/* 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>
P粉0445262172023-08-24 10:43:13
不,没有“前一个兄弟”选择器。
与此相关的是,~
用于一般后继同级元素(意味着该元素位于该元素之后,但不一定紧随其后),并且是一个 CSS3 选择器。 +
代表下一个兄弟,是 CSS2.1。
参见 相邻同级组合器 "http://www.w3.org/TR/css3-selectors/" rel="noreferrer">选择器级别 3 和 5.7 相邻同级选择器 来自 层叠样式表 2 级修订版 1 (CSS 2.1) 规范。