css选择器优先级是什么
css 选择器优先级按如下顺序决定:特殊性(id > 类 > 类型 > 通配符)来源顺序(行内 > 内部样式表 > 外部样式表 > 用户代理样式表)声明顺序(靠后的声明优先)重要性(!important 强制提高优先级)
CSS选择器优先级
CSS选择器优先级决定了当多个选择器应用于元素时,哪个选择器将被使用。优先级高的选择器将覆盖优先级低的同类型选择器。
CSS选择器优先级由以下四个方面决定,从高到低排列:
1. 特殊性
立即学习“前端免费学习笔记(深入)”;
特殊性由选择器中使用的选择器类型的数量和位置决定。下列类型的选择器特殊性依次增加:
2. 来源顺序
如果两个选择器的特殊性相同,则来源于更具体来源的选择器优先级更高。来源顺序依次为:
3. 声明顺序
如果两个选择器的特殊性和来源顺序都相同,则写在 CSS 文档中靠后的声明优先级更高。
4. 重要性
!important 关键字可以强制提高选择器的优先级。然而,它的使用应避免,因为它会破坏 CSS 的可维护性。
示例:
以下示例说明了优先级的应用:
#primary { color: red;}.bold { color: blue;}p { color: green;}body { color: black;}p.bold { color: purple !important;}
在上面的示例中,p.bold 的特殊性为 2(类型选择器 + 类选择器),并且声明中包含 !important,因此具有最高的优先级。因此,对于具有 p.bold 类的段落,p.bold 的样式(紫色)将被应用,而不是 #primary(特殊性为 1)、.bold(特殊性为 1)或 p(特殊性为 0)的样式。