HTML、考查css类的样式的笔试题(2021/7/29)

577 阅读2分钟

问输出的文本的颜色是什么?

//CSS代码
.blue{
            color:blue
        }
        .yellow{
            color:yellow
        }
//HTML代码
<span class="yellow blue" style="text-color:'red'">输出的文本的颜色是什么</span>

咋一看,按照选择器的优先级原则,行内样式的优先级最高,因此,答案应该是red。

其实不然,span的文本属性并没有text-color,而是color; 因此我专门去调试,将text-color改成color

<span class="yellow blue" style="color:'red'">输出的文本的颜色是什么 调试结果依然不是red。

这个地方就比较细节了,color可以直接使用red,不需要加上引号,因此,这个地方行内式的样式并不起作用。

那么,这道题,到底选什么,我把题目放到微信群之后,有不少人觉得应该选择blue,这个时候就暴露了自己对选择器优先级知识混淆。

我们来复习一下选择器的优先级原理:

  1. !important>行内式>id>类,属性>标签,伪元素(通配符权重为0)
  2. 如果是同种优先级的情况下,都是内嵌式,我们就按照1,1,1,1,1的方式进行赋权比较,从上一级的数字比,直到有一个属性值得权重更高;
  3. 如果说2得方法赋值得权重相同,那么这个时候,则使用更后出现的属性值进行赋值

这个同学出现的错误就是没有严格按照定义来,把class=""里面的顺序当作了优先级的顺序

因此,最终的答案应该是yellow。

下面我们再看一个题目,这个是多个标签嵌套的。

//问输出的文本的颜色是什么ul class=”shopping-listid=”awesome”>
<li><spanMilk</span></li>
<li class=”favoriteid=”must-buy”><span class=”highlight”>Sausage</span></li>
</ul//CSS代码
.shopping-list .favorite {
    color: red;
}
#must-buy {
    color: blue;
}

我们一起来看看文本的颜色的选择器有哪些,将所有与该元素相关联的选择器全部摆出来

.shopping-list , #awesome , .favorite , #must-buy

color:red的有.shopping-list 和.favorite,优先级为0,0,2,0,0

color:blue的有#must-buy,优先级为0,1,0,0,0

因此选择blue 最后,我在网上找了一些专门的练习题,供大家练习。

[(www.everyinch.net/index.php/l…)] 链接转载于:陈童的博客