什么是css权重

今天看到这个问题,重新总结,留下点笔记

什么是css的权重?

1、要了解权重,必须先了解css样式的6种基础选择器

     (1)id选择器  #

     (2)类选择器 .className

     (3)属性选择器 [attr]

     (4)伪类和伪元素 :hover   :first-line

     (5)标签选择器  p

     (6)通配符选择器 *

2其它的选择符均可由基本的组成,组合的方式分为三种

     (1)后代选择符 .className  .classChildName

     (2)子选择符  .className > .classChildName

     (3)相邻选择符 .className + .classChildName

3而所谓的权重就是指这些选择符的优先级,优先级和权重有如下规则

(1)优先级越高的css样式会覆盖优先级低的样式,优先级越高权重越高

(2)计算权重的规则,根据w3c的css规范:

             a.计算选择符中 id选择器 的数量 (假设是100)

             b.计算选择符中 类选择器、属性选择器、伪类选择器 的数量(假设是10)

             c.计算选择符中 标签选择器、伪元素 的数量(假设是1)

 (3) 比较各自选择符的优先级时,计算权重,权重大则优先级高

 (4)从博客园看到的口诀:

             权重记忆口诀。从0开始,一个行内样式+1000,一个id+100,一个属性选择器/class或者伪类+10,一个元素名,或者伪元素+1

 

posted @ 2016-12-02 15:08  心似一片青苔  阅读(734)  评论(0编辑  收藏  举报