1. 使用不同的数字基数
如果数字中类型多于9个,那么必须采用更大的数字基数。例如,复合数[11,7,19]不能通过简单地连接3个部分转换成十进制数。而是将数字转换成采用更高基数的数字,如基数20(如果类型超过19,则基数更高)。
按如下所示对3个部分分别做乘法并将结果相加(从最右边的数字开始,然后依次计算左边的数字):
20×19 = 380
20×20×7 = 2800
20×20×20×11 = 88000
总和(十进制) = 91180
在左边,用使用的基数替换值20,如果一组规则的所有复合数都从这一基数转换为十进制的,就很容易确定特殊性,从而得到每个规则的优先级。所幸的是,所有这些都由CSS处理器完成,但知道其工作原理可以帮助我们正确创建规则和了解其优先级。
2.3.4 !important标记
如果两个或多个样式规则有相同的优先级,那最近应用的规则获得优先权。不过,使用!important标记可强制一个规则优先于其他有相同优先级的规则,如下所示:
p { color:#ff0000 !important; }
这样,所有前面同等的设置将被覆盖(甚至使用!important的),后面应用的任何同等规则将被忽略。例如,下列两个规则中的第二个通常获得优先权,但因为在前一个规则中使用了!important,所以它被忽略了:
p { color:#ff0000 !important; }
p { color:#ffff00 }