继承与层叠的用法

1.继承

定义:一些样式父给元素设置后,其后代元素也会继承父类的样式,这就叫做继承性。

  • 后代元素只能继承来自祖先元素的文本样式。比如:color、text-开头的、font-开头的、line-开头的
例:
  <style>
    div {
      color: #F4A460;
      font-size: 48px;
    }
  </style>
</head>
<body>
<body>
  <div>
    <div>
        <p>这是一段文字</p>
      </div>    
  </div>

在这里插入图片描述

【注意】

  • 关于盒子的属性(宽、高、padding、margin)、定位和布局的属性都不能被继承。
  • a标签的颜色与下划线不能通过继承改变,要直接作用在a标签本身。

2.层叠

如果一个标签被多个选择器选中,同时这多个选择器又为它设置了冲突的样式,那么我们需要计算这些选择器的权重,决定最终的显示样式。

计算权重

同一个样式写在不同的样式表中,权重大小为:
  • 行内样式表>内嵌式+外链式(顺序,后面的样式会覆盖前面的样式。就近原则。)
同一个样式表不同的选择器,权重大小:
  • 比较选择器的数量,先比较id选择器的数量,id选择器数量相同的话,再比较类选择器的数量,类选择器的数量相同的话,再比较标签选择器的数量。
对于相同的样式表,选择器的优先级为:id选择器>类选择器 >标签选择器。
【注意】
  • 权重相同时,比较书写的顺序,后面的会覆盖前面的样式。
  • 并集选择器的权重是分开的。
  • 选择器未选中元素时,通过继承过来的的样式的权重是最低的。
总结:

1.如果样式存在不同的样式表,行内样式表的权重最高,再比较内嵌式与外链式的书写顺序。
2.同一样式表中,数基础选择器的数量。

  • id选择器数量多的权重。
  • id选择器相同,再看类选择器的数量,谁多谁的权重高。
  • 类选择器的数量也相同,比较标签选择器的数量。
  • 如果标签选择器的数量也相同,则比较书写顺序。
  • 通配符的权重对选择器的权重要低,比继承过来的要高。

important

  • impor在英语中是“最重要”的意思。
  • 加上这句话后,该样式的权重就会变成最高。
格式:
属性:属性值 !important;
//注意important前必须加‘!’。
例1:
  <style>
    p {
      font-size: 32px;
      color: green;
    }
    p {
      font-size: 32px;
      color: red;
    }
  </style>
</head>
<body>
<body>
  <p>这是一段文字</p>
  • 在加 !important前,运行结果字体颜色是红色的,因为同等选择器,后面的会覆盖前面的样式。
    在这里插入图片描述
例2:
  <style>
    p {
      font-size: 32px;
      color: green !important;
    }
    p {
      font-size: 32px;
      color: red;
    }
  </style>
</head>
<body>
<body>
  <p>这是一段文字</p>
  • 在加了 !important之后,运行结果字体颜色则是绿色的,因为important会让该样式的属性变成最高权重。

在这里插入图片描述

【注意】

  • important提升的是一个属性的权重,,而不是选择器的权重。
  • important无法提升继承的权重。
  • 实际开发者,important慎用!!!一般不允许使用,因为它很容易使用不当,造成使用量的增加,从而导致网页这个CSS的样式崩溃。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值