HTML5 CSS的继承,特殊性和层叠

继承

css某些属性具有继承的特点,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代。
如以下代码,不仅< p>标签文字变色,< span>标签也会变色。

p{color:red;}

<p>俱往矣,<span>数风流人物,</span>还看今朝。</p>

但是有些属性不具有继承性,如:

p{color:red;border:1px solid red;}

<p>俱往矣,<span>数风流人物,</span>还看今朝。</p>

效果:


如果想< span>标签也加边框,需要单独设置:

<p>俱往矣,<span style="border:1px solid blue">数风流人物,</span>还看今朝。</p>

效果:


特殊性-权值

权值的存在,决定了我们在对同一个标签设置不同的css样式时会使用哪一个,如:

p{color:red;}
.first{color:green;}
<p class="first">俱往矣,数风流人物,还看今朝。</p>

效果会是绿色,原因就是权值的存在
标签的权值为1,类选择符的权值为10,ID选择符的权值最高为100。例如下面的代码:

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*/

继承的权值最小,小于1


层叠

上面讲了权值,那么会有一个问题,如果权值一样的结果会怎样呢?层叠就是当权值一样的时候后定义的样式会覆盖前面定义的样式,如:

p{color:red;}
p{color:green;}
<p>数风流人物,还看今朝。</p>

字体会是绿色
这样就可以理解css样式优先级了:
内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)

注意:

如果有些情况,我们不希望后面的覆盖前面的样式,我们可以定义最高权值,使用!important,如:

p{color:red!important;}
p{color:green;}
<p>数风流人物,还看今朝。</p>

这样字体就会是红色了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值