选择器的权重,分享


选择器的权重

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

<!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

www.dengb.comtruehttps://www.dengb.com/HTML_CSS/1386178.htmlTechArticle选择器的权重, 选择器的权重 权重就是我同个元素,有多个选择器的情况下,我该选择哪一个选择器的样式。 !doctype htmlhtml head title/titl…

—-想了解更多的css相关样式处理怎么解决关注<计算机技术网(www.ctvol.com)!!>

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/csstutorial/107707.html

(0)
上一篇 2020年5月3日
下一篇 2020年5月3日

精彩推荐