p #second span{color:purple;}为什么不生效而p#second span{color:purple;}可以生效

来源:9-3 权值计算-特殊性

Phil_Libra

2021-02-24 13:57

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>特殊性</title>
<style type="text/css">
    p{color:red;}.first{color:green;}/*因为权值高显示为绿色*/
    span{color:pink;}/*设置为粉色*/
    p #second span{color:purple;}
</style>
</head>
<body>
    <h1>勇气</h1>    
    <p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>
    <p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很<span>简单</span>的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>
</body>
</html>

想要把第一个span设置为粉色,第二个标签设置为紫色,这样为什么不生效?去掉空格变成

p#second span{color:purple;}

就可以了,两个选择器之间不用加空格么?


另外参考这个问题:https://www.imooc.com/qadetail/350589

这个问题里面设置

.first#ha{color:purple;}

并不生效,而要加空格变成

.first #ha{color:purple;}

才能生效,这又是为什么?

写回答 关注

2回答

  • weixin_慕丝3116797
    2021-02-24 15:04:25
    已采纳

    加上空格表示.first的所有#ha子代;不加空格表示的是first#ha类,first#ha是一个整体

  • weixin_慕标0013371
    2021-02-24 15:04:48

    p #second 是在p标签里面找id为second的标签,p#second 是找id为second的p标签

初识HTML(5)+CSS(3)-升级版

HTML(5)+CSS(3)基础教程8小时带领大家步步深入学习标签用法和意义

1225806 学习 · 18234 问题

查看课程

相似问题