为了账号安全,请及时绑定邮箱和手机立即绑定

为什么是紫色的字

p span{color:purple;} 权值不应该是1+1=2吗? .first{color:green;}权值为10 、 为什么字体变成了权值更小的紫色了呢

正在回答

7 回答

我觉得这里面最大的问题是,楼主忽略了继承,第一段中的<span>在没有被直接赋予css样式时,权值是按照楼主这样计算的,当<span>被直接赋予css样式时,.first的权值在对<span>影响时就变成了继承(权值为0.1),所以颜色才会变成紫色。

其实我也是在学习中遇到跟你一样的疑问,仔细研究后得出的结论。

1 回复 有任何疑惑可以回复我~

在说下主体。 p  元素内的所有span元素。 类名是first的元素不是同一个对象,你比较权值的没有任何意义。

修改下。 <div class="first">11<div>22<span>注意我的颜色哦<span></div></div>

div div{color:purple;}       .first{color:green;}。现在看下 这个span的内字体的颜色!。加粗的div是span的父级。都没有直接对span设置颜色的样式故继承父级字体颜色。div的后代div元素,符合span父级的设置条件。 而第二个.first 类名为为.first的元素。故没有比较权重的说法。

0 回复 有任何疑惑可以回复我~

权值没问题。 颜色字体等某些属性是具备默认继承属性的(屁话)。 10权值为设置p标签的样式颜色为pink,ok 其子元素默认继承该颜色,现在在给子元素span 权重为2设置purple ok也是没问题的。

最后说下你比较的权值。前提是同一个元素

0 回复 有任何疑惑可以回复我~

1楼正解,权值叠加,不要光看权值,<span>是在.first里面的标签,子元素的权值一定比父元素的权值高

1 回复 有任何疑惑可以回复我~

不应该啊    是不是你写错了  看看,first是不是少写了什么了。

0 回复 有任何疑惑可以回复我~
#1

麻川 提问者

就是这个任务让这么做的 然后达到了任务的目的变成了紫色 可我不明白为什么 因为权值比原来的要低得多
2016-11-19 回复 有任何疑惑可以回复我~

因为p span{color:purple;} ,purple是 紫色。first{color:green;}以p span{color:purple;}为重

0 回复 有任何疑惑可以回复我~
#1

麻川 提问者

对不起 我想要问的是他们的权值问题
2016-11-19 回复 有任何疑惑可以回复我~

标签嵌套 权值累加

1 回复 有任何疑惑可以回复我~
#1

kz_java

此时权值为12
2016-11-19 回复 有任何疑惑可以回复我~
#2

麻川 提问者

p{color:red;} /*权值为1*/ p span{color:green;} /*权值为1+1=2*/ .warning{color:white;} /*权值为10*/ p span.warning{color:purple;} /*权值为1+1+10=12*/ #footer .note p{color:yellow;} /*权值为100+10+1=111*/ (这是9-2特殊性章节写的内容)我现在处在9-3的章节中 按9-2的要求的话 那么9-3的任务有点说不通
2016-11-19 回复 有任何疑惑可以回复我~
#3

kz_java 回复 麻川 提问者

9-3是想表达的是权值一样时 用就近原则
2016-11-19 回复 有任何疑惑可以回复我~
#4

麻川 提问者

我懂了 原来是按照先后顺序来排列的
2016-11-19 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

为什么是紫色的字

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信