美文网首页
简介一下前端CSS选择器的权重值

简介一下前端CSS选择器的权重值

作者: pythonFL | 来源:发表于2018-09-05 15:00 被阅读0次

最近发现一个关于css权重的知识,瞬间解决了很多疑惑,觉得有必要和大家分享一下

在css样式设计时很多时候都是靠权重来设置标签样式,其中一个最大的规律就是各种选择方式的权重大小:

!important>行间样式>id>class |属性 >标签选择器 > 通配符

但是这就出现一个问题,如果是两两组合的话,就让人分不清权重的优先级了。因为这个权重不仅有一个大小的关系,而且还有一个具体的值的对应关系,同时这个值是可运算的,最重要的一点是这个值不是10进制,是256进制的数据,具体对应关系如下:

!important     ---->   Infinity

行间样式        ---->  1000

id                     ---->   100

class|属性|伪类  ----> 10

标签|伪元素       ---->   1

通配符                ---->  0

//256进制

实例一:

有这么一组标签:

<div class="wrapper" id="only">

        <p  class="wrapper1" id="only1">

        </p>

</div>

假如用下面两种方式来装饰样式,哪个会起作用:

1,#only p{

    background-color:red;

}

2,.wrapper .wrapper1{

    background-color:green;

}

这个时候如果单纯的靠优先级就不太容易判断,这个时候权重值就可以很直接的解决这个问题,首先要知道些在一行的选择器权重值直接相加,虽然值不是10进制,但就一般的情况下,用10进制也很明显的能比较出大小的。

第一种选择方式权重值为:100 +1 =101

第二种选择方式的权重值为:10+10 =20,所以background-color:red;起作用

实例二:

还是上面的标签,选择器改为如下:

1,div#only p{

background-color:red!important;

}

2,.wrapper .wrapper1{

background-color:green!important;

}

第一种选择方式权重值为:1+100 +1 +  Infinity=102 + Infinity

第二种选择方式的权重值为:10+10 + Infinity =20 + Infinity,

这个时候就有一个问题了,当有两个无穷大的权重时,这个如何比较?

在CSS权重值里,无穷大也仅仅是作为一个值来计算,还要继续比较其他的值,也就是说

1 +  Infinity  >   Infinity     所以这里background-color:red;起作用

最后需要补充的一点是,假如两个选择器权重值一样,那么后面的代码就会默认的覆盖前面的代码,也就是后面的代码起作用!!!!

相关文章

  • 简介一下前端CSS选择器的权重值

    最近发现一个关于css权重的知识,瞬间解决了很多疑惑,觉得有必要和大家分享一下 在css样式设计时很多时候都是靠权...

  • 归零——CSS-第四天

    CSS学习 CSS权重 选择器 权重...

  • CSS 基础

    一、样式选择器 特殊性:通用选择器*权重值为0,标签权重值为1,类选择器和伪类选择器权重值为10,ID选择器权重值...

  • day31-总结(css布局)

    css中的布局 css选择器的权重 选择器的权重类型选择器(元素选择器):0001class选择器:0010id选...

  • css选择器权重

    css选择器权重示例: .html .css

  • CSS学习总结

    学了有一小段时间前端了,今做个CSS的总结! 目录: CSS 简介 CSS 语法 CSS 选择器 CSS 引入方式...

  • css经典权重5道题解析

    在前端的道路学习过程,CSS的选择器的权重的问题知识点是不可避免的。 下面先简单回顾一下三种常用的选择器,id选择...

  • CSS权重

    这篇是基于CSS选择器的,如果对选择器不太了解可以先看另一篇CSS选择器 (一)什么是CSS权重? 权重决定了你C...

  • CSS样式选择器权重 计算

    CSS样式选择器权重 计算

  • day3-css核心属性

    01-选择器的优先级 每种选择器都有权重值,权重值越大优先级越高权重值一样的时候谁后写谁高 标签选择器:0001(...

网友评论

      本文标题:简介一下前端CSS选择器的权重值

      本文链接:https://www.haomeiwen.com/subject/oylawftx.html