CSS权重详解

权重---样式发生冲突

以下面为例,我们通过元素选择器和类名选择器给元素样式,元素的样式使用了类名的样式.如果我们改变标签和类名的位置,结果还是一样,并不是位置的原因,而是两者的权重不同.

//CSS 
 p {
       color: rgb(0, 47, 255);
        }
 .color {
            color: aqua;
        }

//HTML
   <p class="color">666</p>

 从上例可以知道,权重越大,浏览器CSS权重策略就会判定该样式显示.

选择器权重大小排序

行内样式>ID选择器>类选择器,属性选择器,伪类>元素选择器,伪元素.

由于权重分为四级,我们通常采用 0 0 0 0进行比较,0的位置分别与其权重大小层级对应.

我们以下面为例

<p>
   <span>
        <a href="" id="box" class="box"></a>
   </span>
</p>
选择器的权重比较
选择器权重
a0,0,0,1
p a0,0,0,2
p span a0,0,0,3
.box0,0,1,0
a.box0,0,1,0
#box0,1,0,0
a#box.box0,1,1,1

由上表可知,每个选择器分别的权重了.当两者权重相同时,写在后面的样式权重高.

全局选择器的权重(*)

有例子可知,全局选择器(*)的权重最低为0,0,0,0

//CSS
 * {
            color: antiquewhite;
        }

        div {
            color: aqua;
    }

//HTML
<div>666</div>

 最高权重关键词 !important

此时全局选择器有关键词的加持,权重达到最高 

//CSS
 * {
            color: rgb(59, 1, 253) !important;
        }

        div {
            color: aqua;
   }

//HTML
  <div>666</div>

继承

给父元素指定某种样式,它的子元素也会具有相应的样式.爸爸和儿子的样式继承了爷爷的,儿子继承了爸爸的,继承的样式的权重非常小,比全局选择器还要小.

  //CSS
.grandpa {
            font-size: 50px;
        }

        .pa {
            color: aqua;
            font-weight: 700;
        }

        .son {
            font-weight: normal;
        }

//HTML
 <div class="grandpa">
        爷爷
        <div class="pa">
            爸爸
            <div class="son">
                儿子
            </di>
        </div>
    </div>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卷小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值