CSS 权重(优先级规则)

(1)!important声明 - 最高优先级

css 复制代码
p {
  color: blue !important; /* 最高优先级,即使有其他冲突规则 */
}
.text {
  color: red;
}

(2)内联样式 - 权重值1000

css 复制代码
<p style="color: green;">这个文字是绿色的(内联样式)</p>

<style>
  p { color: red; } /* 不会生效 */
  #special { color: blue; } /* 不会生效 */
</style>

(3)ID选择器 - 权重值100

css 复制代码
#header {
  color: purple; /* ID选择器 */
}
.header {
  color: gray; /* 类选择器 - 优先级较低 */
}

(4)类选择器/属性选择器/伪类选择器 - 权重值10

css 复制代码
.container { /* 类选择器 */
  background: lightblue;
}
input[type="text"] { /* 属性选择器 */
  border: 2px solid red;
}
a:hover { /* 伪类选择器 */
  color: orange;
}
div { /* 元素选择器 - 优先级较低 */
  background: white;
}

(5)元素选择器/伪元素选择器 - 权重值1

css 复制代码
p { /* 元素选择器 */
  font-size: 16px;
}
p::first-letter { /* 伪元素选择器 */
  font-size: 24px;
}

(6)通用选择器/关系选择器 - 权重值0

css 复制代码
* { /* 通用选择器 - 优先级最低 */
  margin: 0;
  padding: 0;
}
div > p { /* 关系选择器 - 优先级与单独p元素相同 */
  color: darkgreen;
}

综合

css 复制代码
/* 权重: 1个ID(100) + 1个类(10) + 1个元素(1) = 111 */
#content .article p {
  color: navy;
}

/* 权重: 2个类(10+10=20) + 1个元素(1) = 21 */
.container .text p {
  color: red; /* 不会生效,因为111 > 21 */
}

/* 权重: 1个元素(1) */
p {
  color: green; /* 不会生效 */
}
相关推荐
陈随易19 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
里欧跑得慢21 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒1 天前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen1 天前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真1 天前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal1 天前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
竹林8181 天前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript
donecoding1 天前
Playwright MCP 页面捕获:Snapshot、截图、HTML 到底选哪个?
前端·ai编程·前端工程化
滕青山1 天前
在线PDF拆分工具核心JS实现
前端·javascript·vue.js
Smilezyl1 天前
一个独立开发者,靠一份 markdown 驱动 Claude Code, 用 20 天跑通 9 个包的 monorepo 工程
前端·人工智能·github