在一些教程网站上只看到兄弟选择器的说法,也就是加号(+),但是偶然听说了毗邻兄弟选择器的说法
所以特意实验一下,找一下区别。
从字面意思来看:毗邻兄弟选择器即是指相邻的兄弟,而普通兄弟选择器则可以不一定刚好相邻,比如
中间间隔了其它元素。
看下面实例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>毗邻选择器与普通兄弟选择器</title>
<link rel="stylesheet" type="text/css" href="*.css"/>
<script language="javascript" type="text/javascript"></script>
<style>
.one+.three{
color:red;
}
</style>
</head>
<body>
<div class="one">one</div><div class="two">two</div>
<div class="three">three</div>
</body>
</html>
上面的毗邻兄弟选择器运行结果是:
修改成普通兄弟选择器试试:
<style>
.one~.three{
color:red;
}
</style>
结果是:
对比结果我们发现,毗邻兄弟选择器并没有对指定的three这个标签起作用,因为它们中间间隔了two
,而普通兄弟选择器则不存在这种问题,只要是兄弟(同级),它就能作用到。