首页  >  问答  >  正文

是否有一个选择器用于选择前面的同级元素?

加号选择器(+)用于选择下一个相邻的兄弟。

上一个兄弟姐妹有等效的吗?

P粉512363233P粉512363233346 天前584

全部回复(2)我来回复

  • P粉486743671

    P粉4867436712023-10-10 20:17:35

    我找到了一种方法来设计所有以前的同级(与 ~ 相反)的样式,该方法可能会根据您的需要而起作用。

    假设您有一个链接列表,当鼠标悬停在其中一个链接上时,之前的所有链接都应变为红色。你可以这样做:

    /* 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>

    回复
    0
  • P粉550823577

    P粉5508235772023-10-10 19:15:30

    不,没有“前一个兄弟”选择器。

    与此相关的是,~ 用于一般后继同级元素(意味着该元素位于该元素之后,但不一定紧随其后),并且是一个 CSS3 选择器。 + 代表下一个兄弟,是 CSS2.1。

    参见 相邻同级组合器 "http://www.w3.org/TR/css3-selectors/" rel="noreferrer">选择器级别 3 和 5.7 相邻同级选择器 来自 层叠样式表 2 级修订版 1 (CSS 2.1) 规范

    回复
    0
  • 取消回复