请问老师,按照选择器权重,这样写应该所有的字都为绿色,为什么权值相同四个字没有被覆盖为绿色呢?
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>权值</title>
<style type="text/css">
#div{color:green;}
p.p1 span{color:red;}/*补充代码*/
</style>
</head>
<body>
<div id="div">
<p class="p1">
<span>权值相同,</span>就近原则
</p>
<p class="p2">
<span>权值不同,</span>哪个权值高,就用哪个
</p>
</div>
</body>
</html>
正在回答
同学你好,“权值相同”包裹在span中,代码中有直接给span设置样式。而使用#div设置的绿色,是它父级元素身上的样式。这个样式父级元素会继承给span,继承样式的优先级小于自身的样式,所以文字不会变成绿色。

给同一个元素设置样式才会比较权重,例如如下:
用不同的选择器给span设置样式,由于第一个权重大,所以span的文字会变成绿色

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星