问答详情
源自:8-10 给选择器分个组 - 分组选择器

请问一下:为什么胆小如鼠还是红色,h1,span{color:red;} 和first,#second span{color:green;}哪个的级别优先,还是???谢谢了

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>分组选择符</title>

<style type="text/css">

h1,span{color:red;}

.first,#second span{color:green;}

</style>

</head>

<body>

    <h1>勇气</h1>

    <p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>

    <p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很<span>简单</span>的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>

    <img src="http://img.mukewang.com/52b4113500018cf102000200.jpg" >

</body>

</html>


提问者:慕容1519046 2017-02-17 01:27

个回答

  • qq_頖縌乖乄絯_04017281
    2017-03-03 19:52:37
    已采纳

    这是因为权值才会这样的,上面的代码可以改为h1{color :red;}

                                      span{color :red;}

                                      .first{color:green;}

                                      #second{ color:green;}

    .first的权值为10,但对于它<span>胆小如鼠</span>这个<span>标签来说,<span>标签继承了.first,继承的权值最低为0.1。 span{ color :red;}的权值为1。权值1>0.1,所以优先执行span{}语句,所以胆小如鼠为红的。

    详情见9-2的特殊性


  • 慕移动9181930
    2022-03-24 03:08:58

    我看,老师挺有才!与php100有的一拼。CSS

  • 慕粉1054083532
    2017-03-24 19:29:25

    《CSS权威指南》第三版里面有特别提到这个问题

    这里涉及到继承的特殊性问题,如果使用.first,#second span{color:green;},<span>的声明一共有两条,一条继承来自.first,字体颜色应该为绿色,但是继承的特殊性为0;第二条来自<span>{color:red;},特殊性为1。第二条的特殊性大于第一条,所以显示为红色

    http://img.mukewang.com/58d5030b0001aaa607690106.jpg

  • 晓兔
    2017-03-03 12:03:08

    h1,span{color:red;}

    .first,#second span{color:green;}

    第二段代码应当是并列关系,只是将second下面的span和first同时被定义成了绿色,而first下面的span并没有被定义,所以优先采用了第一段代码显示红色。

    如果改成.first span,#second span{color:green;}的话胆小如鼠就变绿色了,但整段代码仍旧是黑色不变,因为只指定了first下的span,而没有指定整个first。


    我是这样理解的,不知道对不对。

  • Etoo9
    2017-02-26 21:55:39

    两个同为分组选择器,优先级别应该是同等的,只是修饰的内容不同,元素不一样。

  • 楠同学
    2017-02-25 11:19:22

    同问此问题

  • 海瀚world_0
    2017-02-17 02:04:15

    达到目的就行,什么优先级。。。