<style type="text/css">
p{color:red;}/*1*/
.first{color:green;}/*10*/
span{color:pink;}/*1*/
p span{color:purple;}/*1+1=2*/
</style>
</head>
<body>
<h1>勇气</h1>
<p class="first">三年级时,我还是一个<span id="most">胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>
<p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很简单的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>
代码如上,按理说“胆小如鼠”应该显示不出来紫色啊,因为.first的权值是10而p span的权值只是2而已 求师兄师姐解答 谢谢(。・∀・)ノ゙
p标签的.first是继承给span标签的,继承的权重为0.1
p span权重为2,当然是紫色了
.first{color:green;} 对于first来说,这条语句的权值为 10 ;而对于first中的span胆小如鼠来说,因为继承性,这条语句对于胆小如鼠来说只有 0.1 的权值。
可以这么理解,它是父标签P直接指向的子标签SPAN,它的权值为2;而P标签的.first是继承给子标签SPAN的,而继承的权值最低为0.1,所以它显示为紫色。
可以这么理解 p与first设置的是整个段落的颜色 而span设置的是标注出来文本的颜色 所以没有可比性 ,只能p与first比较 span与p span比较 我是这么理解的 不知道对不对
就近原则,你明白不?
.first设置的是P标签的颜色,P标签里面的span元素只是继承了P标签的颜色样式而已,至于继承的权重,你懂的