‘+’ 用于同级选择
‘>’ 或 空格用于后代选择
‘>’ 或 空格均可用于子代选择
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>css hover</title>
<style>
.second {
display: none;
}
.first:hover+.second,
.second:hover {
display: block;
}
/*第一个div hover时,改变其子标签的颜色*/
.first:hover .first-child {
color: cyan;
}
/*第一个div hover时,改变第二个div标签的颜色*/
.first:hover+.second {
color: red;
}
/*第一个div hover时,改变第二个div的子标签的颜色*/
.first:hover+.second>.second-child {
color: blue;
}
/*第一个div hover时,改变第三个div标签的颜色---非紧邻元素,无效*/
.first:hover+.third {
color: cyan;
}
/*正确方式 第一个div hover时,改变第三个div标签的颜色*/
/* .first:hover+.second+.third {
color: cyan;
} */
/*第三个div hover时,改变第二个div标签的颜色---对上一个紧邻元素,无效*/
.third:hover+.second {
color: red;
}
</style>
</head>
<body>
<div class="first">
第一个div标签
<div class="first-child">第一个div标签的子标签</div>
</div>
<div class="second">
第二个div标签:(第一个div标签的同级标签)
<div class="second-child">第二个div标签的 子元素</div>
</div>
<div class="third">第三个div标签</div>
</body>
</html>
第一个div标签.first hover 效果
效果如图