HoG*_*oGo 39 html css parent-child hover
我有<a>个<span>孩子.我写了一些CSS,当父母悬停时会改变孩子们的边框颜色,但是当我悬停孩子时它也会改变边框颜色,这不应该.
a {
    padding: 50px;
    border: 1px solid black;
}
a span {
    position: absolute;
    top: 200px;
    padding: 30px;
    border: 10px solid green;
}
a:hover span {
    border: 10px solid red;
}   <a>
    Parent text
    <span>Child text</span>    
</a>Rap*_*nah 65
2013年以下是有道理的.然而,现在,我会使用:not()所描述的选择如下.
CSS可以被覆盖.
演示:http: //jsfiddle.net/persianturtle/J4SUb/
用这个:
.parent {
  padding: 50px;
  border: 1px solid black;
}
.parent span {
  position: absolute;
  top: 200px;
  padding: 30px;
  border: 10px solid green;
}
.parent:hover span {
  border: 10px solid red;
}
.parent span:hover {
  border: 10px solid green;
}如果您不关心支持旧浏览器,您可以使用:not()来排除该元素:
.parent:hover span:not(:hover) {
    border: 10px solid red;
}
演示:http : //jsfiddle.net/vz9A9/1/
如果您确实想支持它们,我想您将不得不使用 JavaScript 或再次覆盖 CSS 属性:
.parent span:hover {
    border: 10px solid green;
}