p #second span{color:purple;}为什么不生效而p#second span{color:purple;}可以生效
<!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;}
才能生效,这又是为什么?