1、继承性
大多数CSS属性是可以被继承的
2、层叠性
可以为一个元素定义多个样式规则
多个样式规则中,如果样式声明不重复的话,那么则可以层叠为一个样式规则
3、优先级
样式定义冲突(重复)时,会按照不同样式的优先级来应用样式
低:浏览器缺省设置(User Agent)
中:外部样式表或内部样式表
就近原则
高:内联样式
注意:继承的样式和自定义样式冲突时,永远都是以自定义的为主
优先级计算方式,权值进行累加 ,值越大,优先级越高(比如 #div .div div 权值为100+10+1),如下表:
选择器类别 | 说明 | 权值表示 | |
行内样式 | 行内只有一个 style = "" | 1000 | |
id选择器 | selector中使用了几个id,即#的个数 | 100 | |
类选择器 | 类,伪类,以及属性的个数 如: .outerClass .buttonClass[type="button"]:hover{} 选择器中有2个类,1个属性,1个伪类 | 10 | |
元素选择器 | 伪元素和标签元素的个数,如: p:first-child 选择器中有一个标签元素p和一个伪元素first-child | 1 |
4、!important 规则
显示调整样式属性的优先级
只要 !important 出现,永远都以!important 的为主
语法:
选择器{属性:属性值 !important;}
注意:尽量少用