前端中CSS选择器权重的问题
前言
前端中很重要的CSS,使得网页更加丰满美丽,我们使用CSS时,必不可少的需要使用选择器,选择器也分为简单选择器和复合选择器。而在给选择器中填充内容时,有时候会有一些命令重复,会涉及到优先级的问题,所以优先级孰轻孰重需要了解。
正文:
可知每种选择器的权重是不一样的,而权重越大,代表着优先级越高,说明一下,这个权重不是二进制哈。
当然也有一些注意点:
复合选择器的权重是会叠加的,比如类选择器的#boy的权重为10,但是#boy p 此时这个复合选择器的权重就是10+1=11。(虽然会叠加,但是是不会产生进位的哈)
如表所示继承的权重是0,也就是说无论父级权重多大,子代继承的样式权重都是0。
那么如果权重一样咋办呢?答案是就近原则。
下面举一些例子:
HTML和CSS代码
网页结果显示:(因为box属于父级别,所以权重是0,但是p是元素选择器,权重为1,)(官大一级压死人)
HTML和CSS代码
网页结果显示:原因是 .NIU P 是类选择器加元素选择器,所以权重为11,但是 .ben 权重为10