温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS选择器的权重是什么

发布时间:2022-03-23 10:43:40 来源:亿速云 阅读:189 作者:iii 栏目:web开发

这篇文章主要介绍了CSS选择器的权重是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS选择器的权重是什么文章都会有所收获,下面我们一起来看看吧。

选择器的权重

权重就是我同个元素,有多个选择器的情况下,我该选择哪一个选择器的样式。

<!doctype html>
<html>
    <head>
        <title></title>
        <meta charset="utf-8" />
        <style type="text/css">
            #p{
                background: red;
            }
            .p{
                background: skyblue;
            }
            p{
                background: green;
            }
            
        </style>
    </head>
    <body>
        <p style="background: pink" id="p">行内的样式</p>
        <p  class="p" id="p">id的样式</p>
        <p  class="p">class的样式</p>
        <p>p标签的样式 </p>
    </body>
</html>

通过上面的比较,可以得出,行内样式>id选择器>类选择器>标签选择器>通配符

那么有没有可能让标签选择大于所有的选择器呢,答案是有的,只要加上这行代码!important,任何选择器的权重就是无限大了。

<!doctype html>
<html>
    <head>
        <title></title>
        <meta charset="utf-8" />
        <style type="text/css">
            #p{
                background: red;
            }
            .p{
                background: skyblue;
            }
            p{
                background: green !important;
            }
            *{
                background: brown 
            }
        </style>
    </head>
    <body>
        <p style="background: pink" id="p">行内的样式</p>
        <p  class="p" id="p">id的样式</p>
        <p  class="p">class的样式</p>
        <p>p标签的样式 </p>
    </body>
</html>

选择器的类型

ID选择器 #id

类选择器 .class

标签选择器 p,div等

属性选择器 [type="text"]

通用选择器 *

伪类选择器 :hover

伪元素选择器 ::before

子选择器、相邻选择器

选择器的权重

第一等:行内样式是 1000,行内样式虽然没被列入选择器里,但它的权重是最高的

第二等:id选择器是 100

第三等:类选择器、伪类选择。属性选择器、属性选择器 10

第四等:标签选择器和伪元素选择器 1

其他选择器的权重为0

继承的样式没有权重

如果等级相同,那么最后的样式会覆盖前面的样式

最后请记住!important 的权重是无限大的

权重的计算

将选择器的权重加起来

<!doctype html>
<html>
    <head>
        <title></title>
        <meta charset="utf-8" />
        <style type="text/css">
            body input{
                color: blue;
            }
            input{
                color: red;
            }
        </style>
    </head>
    <body>
        <input type="text" name="" value="ssss">
    </body>
</html>

最终的样式是文字为蓝色

因为body input 的权重是2,body,input每个的权重是1,所以加起来就2

#id .input input{
    color: yellow;
}

上面的权重就是 100 + 10 +1 = 111

关于“CSS选择器的权重是什么”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“CSS选择器的权重是什么”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css
AI