悬停在其他元素CSS上?

时间:2014-12-04 12:30:30

标签: html css hover

为什么悬停时.a的背景颜色不会改变? .B?

CSS

.a {
    color: red;
}

.b {
    color: orange;
}

.b:hover .a {
    background-color: blue;
}

HTML

<div id="wrap">
    <div class="a">AAAA
    <div class ="b">BBBB</div>
    </div>
</div>

http://jsfiddle.net/2NEgt/323/

4 个答案:

答案 0 :(得分:5)

因为.a不是后代,或者来自.b之后/内部,这是为它工作的条件

例如,如果您反转它,因为.b.a的后代,它将起作用

.a:hover .b {
    background-color: blue;
}

答案 1 :(得分:1)

当您处于悬停状态的.a的孩子时,您正试图选择.b。这可能永远不会发生.a.b的父级。

答案 2 :(得分:0)

实际上你正试图改变孩子悬停时父母的背景这是不可能的,因为它是b的父母,如果你在悬停时更改b的背景颜色那么它会起作用

.a:hover .b {
    background-color: blue;
}

就在这里     http://jsfiddle.net/u7tYE/

答案 3 :(得分:-2)

您的HTML也有错误.a不是后代

<强> HTML:

<div id="wrap"> <div class="a">AAAA</div> <div class ="b">BBBB</div> </div>

<强> CSS:

.a {
    color: red;
}
.b {
    color: orange;
}
.b:hover, .a:hover  {
  background-color: blue;

}