CSS优先级+继承

1、优先级

优先级指的是相同样式字段重复时,具体是哪个样式值生效的判定。注意两个核心点

  • !important的优先级最高
  • 作用域范围越小、优先级越高

外部样式文件 < 当前文件body < class < id < 行内style < important。

如果有多个class,则在行外<style>标签中声明靠后的优先级高;
如果就一个important那么他说了算。
如果这5个位置的important个数>1,那么此时是把有important的位置找出来,还是按照 默认顺序来看。如下代码可以自行调试

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS优先级学习</title>
<style>
<style>
  body {
    background-color: black;
    color: green;
  }
  .blue-text{
    color:blue !important;
  }
  .pink-text{
    color:pink;
  }
  #orange-text{
    color:orange;
  }
</style>
</head>

<body>
<h1 class="blue-text pink-text"
    id="orange-text"
    style="color:red;"
>Hello World!</h1>
</body>
</html>

2、样式继承

官方文档 https://developer.mozilla.org/zh-CN/docs/Web/CSS/inheritance

在 css 中,当你没有为元素的样式属性指定值时(如果指定了那么自然以指定的为准,就不用考虑继承了)
每个样式属性有明确的是默认继承的 (“Inherited: Yes”) 还是默认不继承的(“Inherited: no”)规定。

2.1 继承属性

如果该样式属性是继承的,那么就取父元素的同属性的计算值。因为文档根元素是有默认值的,所以该属性一定能够拿到值。比如 color 此时AA是绿色。

p { color: green; } 
<p>This paragraph has <em>AA</em> in it.</p>

2.2 非继承属性

如果该样式属性是非继承的,那么就取根元素默认值。比如 border 此时AA是无边框的。

p { border: medium solid; }
<p>This paragraph has <em>AA</em> in it.</p>

注意 inherit 关键字允许显式的声明继承性,它对继承和非继承属性都生效。
(注意:内容不全、但应该无错)

待补充学习

  • 层叠与继承 https://developer.mozilla.org/zh-CN/docs/Learn/CSS/Building_blocks/Cascade_and_inheritance
  • CSS 优先级规则 https://www.runoob.com/note/13278
  • https://www.runoob.com/w3cnote/css-style-priority.html
  • https://juejin.cn/post/6844903997459922958
  • https://www.jianshu.com/p/ae5a8a61a126
  • https://www.jianshu.com/p/34044e3c9317
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值