.first,#second span{
color:green;
}
</style>
</head>
<body>
<h1>勇气</h1>
<p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>
<p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很<span>简单</span>的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>
为什么第一段全变绿了?第二段只有span中的变了。
第一段.first用的是类选择器,选择的是整个类;而第二段的#second span用的是id选择器和后代选择器(其混合选择器:选择器的组合使用),意为选择id=second中的后代元素span。
这样说吧,如果这样写.first,#second{
color:green;
}那么就两个段落全变为绿色了,明白了吗?
看来深夜加班的还真不少!加油!说明你子选择器还没弄太明白,second span只作用于ID为second内的子元素span,所以只有span元素内的内容变为绿色了!
.first是类选择器作用于整段;#second span是后代选择器,作用于子后代元素,第二段中second id选择器的后代元素只有span所以只有span颜色变绿