3

任何人都知道如何将 css 属性应用于 a 标签,但只有当它位于某个 div 中时?我希望 .router_li div 具有悬停效果,但任何其他链接。我不确定这叫什么。

我认为它被称为伪类,我做的不对。我试过这个:

a:router_li:hover{
  background-color:yellow;
  width: 200px;
  height: 60px;
  background-color: #2c5fac;
  border: 1px;
  border-color: #FFFFFF;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-right-radius: 8px;
  border-bottom-left-radius: 8px;
  border-style:solid;
  border-width:1px;
  color: white;
}
4

3 回答 3

5

ID、类和伪类是不同的东西,CSS 对这三者都有不同的表示法:

如果您只想在 with 类(如 中)时应用这个特定的(这:hover是一个伪类),请使用adivrouter_li<div class="router_li">

.router_li a:hover

不过,那是一门课;如果是 ID(如 中<div id="router_li">),请使用

#router_li a:hover

在这两种情况下,router_li它都不是伪类,因为它是在标记中而不是在 CSS 中定义的,因此:router_li您的代码中的 是无效的。另请注意,ID/类(无论它是什么)出现在a:hover- 这称为上下文选择器(a仅当它位于某个时div)。

于 2012-06-25T21:26:13.570 回答
2

使用父id级作为选择器的一部分:

#parentId a {
    /* specific CSS styles */
}

JS 小提琴演示

这当然不是 a pseudo-class(包括:hover, :checked, :focus)或 a pseudo-element(应该是::beforeand ::after)。这是简单的继承,根据祖先选择元素,并且是 和 之间的空间所暗示#parentIda

相反,如果在和>之间没有其他祖先/后代,您可以使用直接子组合子。diva

参考:

于 2012-06-25T21:25:49.763 回答
0

.router_li a:hover只会针对.router_li元素内的悬停锚标签

于 2012-06-25T21:26:44.600 回答