请问JAVASCRIPT是什么颜色?
<!doctype HTML>
<html lang="en"><head>
<meta charset="UTF-8">
<title>document</title>
<style>
.list li{background:blue;}
.js{background:red;}
.html{background:green}
</style>
</head>
<body>
<ul class="list">
<li>CSS</li>
<li class="js">JAVASCRIPT</li>
<li class="html">HTML</li>
</ul>
</body>
</html>
大部分人可能会觉得应该是.js所对应的背景颜色,应该是红色red;但事实上当代码运行后这个呈现的却是blue蓝色,为什么会这样呢?
其实考察问题的主要是关于叠加优先级(在后面的样式会替代前面的样式)的问题,而在这道题中后面的样式并没有代替前面的样式,也就是叠加优先级并没有起到作用,这是为什么呢?原因是叠加优先级在发挥其作用的前提是位于{……}前的东西【即.list】应该一样,所以本题中缺少.list,如果将.js改成 .list .js,那么叠加优先级发挥其作用,JAVASCRIPT应该呈现的是红色red。