CSS权重按“a,b,c,d”计算:内联样式为(1,0,0,0),每个ID加b=1,每个类/属性/伪类加c=1,每个元素/伪元素加d=1,各部分独立计数不进位。
如果您在编写CSS样式时遇到样式未按预期生效的情况,可能是由于CSS选择器的特异性(权重)不同导致的。以下是计算HTML元素CSS权重值的具体方法:
CSS权重由四部分组成,按从左到右的优先级顺序为:内联样式、ID选择器、类/属性/伪类选择器、元素/伪元素选择器。每部分独立计数,不进位,最终以“a,b,c,d”形式表示。
1、内联样式的权重记为 a=1,其余为0,即 (1,0,0,0);
2、每个ID选择器增加 b=1,如 #header 为 (0,1,0,0);
3、每个类选择器(.class)、属性选择器([type="text"])或伪类(:hover)增加 c=1;
4、每个元素标签(div、p)或伪元素(::before)增加 d=1。
内联样式直接写在HTML元素的style属性中,其权重固定为最高层级,不受其他选择器影响。
1、找到HTML元素中带有 style 属性的标签,例如
;2、该元素的CSS权重值确定为 (1,0,0,0);
3、即使存在多个ID或类选择器定义了同一属性,内联样式仍会覆盖它们。
ID选择器具有较高优先级,每个ID独立贡献1单位b值,多个ID叠加时b值相加。
1、识别CSS规则中的ID选择器,例如 #nav #menu #item;
2、统计其中ID选择器的数量,此处为3个;
3、该规则权重值为 (0,3,0,0);
4、注意:ID选择器之间用空格连接表示后代关系,不影响数量统计。
类选择器(.class)、属性选择器([attr])和伪类(:nth
-child)均计入c位,可累加。
1、提取选择器中所有符合规则的部分,例如 .btn.active[type="submit"]:hover;
2、逐个识别:.btn(1个类)、.active(1个类)、[type="submit"](1个属性)、:hover(1个伪类);
3、共4处匹配,c值为4;
4、该选择器权重值为 (0,0,4,0)。
纯元素标签选择器(如 div p span)仅影响d位,每层标签增加1,是权重中最低的一级。
1、分析选择器结构,例如 article header h1;
2、统计标签名数量:article、header、h1 共3个;
3、该规则权重值为 (0,0,0,3);
4、注意:标签之间的空格、>、+、~等组合符不额外增加权重,仅统计元素名本身。
# css
# html
# 伪元素
# css选择器
# css样式
# html元素
# id选择器
# 属性选择器
# 伪类选择器
# red
# class
# 选择器
# 伪类
# 值为
# 多个
# 较高
# 不受
# 您在
# 写在
# 仍会
# 各部分
# 未按
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
网络优化76771 】
【
技术知识130152 】
【
IDC云计算60162 】
【
营销推广131313 】
【
AI优化88182 】
【
百度推广37138 】
【
网站推荐60173 】
【
精选阅读31334 】
相关推荐:
如何使用Golang实现RPC序列化与反序列化_Golang RPC数据编码与解码方法
MAC如何设置网卡MAC地址克隆_MAC终端修改物理地址与环境模拟【教程】
电脑无法识别U盘怎么办 Windows磁盘管理与驱动更新修复识别问题【解决】
php本地部署后数据库连接报错_1045accessdenied错误解决方法详解【汇总】
c++ std::future和std::promise c++线程间通信【教程】
Win10如何更改开机密码_Windows10登录选项更改密码
Win11怎么设置默认视频播放器_Windows 11关联媒体文件打开方式【步骤】
PHP 中 require() 语句返回值的用法详解
Win11怎么关闭系统推荐内容_Windows11开始菜单布局设置
Win11怎么卸载Photos应用_Win11卸载Photos应用方法【教程】
如何使用Golang包导出规则_控制函数和变量可见性
Win11怎么关闭系统提示音_Windows11声音方案设为无声教程
Python对象生命周期管理_创建销毁解析【教程】
PHP主流架构怎么集成Redis缓存_配置步骤【方法】
Win10怎么设置开机密码_Windows10账户登录密码设置与取消
如何使用正则表达式批量替换重复的 *- 模式为固定字符串
Python对象比较与排序_集合使用说明【指导】
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
如何使用 Selenium 正确获取篮球参考网站球员名单元素列表
Win11怎么关闭系统透明度_Windows11个性化颜色透明效果
如何使用正则表达式批量替换重复的“-”模式为固定字符串
C++如何使用std::transform批量处理容器元素?(代码示例)
Go 中 defer 语句在 goroutine 内部不返回时不会执行
本地php环境打开php文件直接下载_浏览器解析php为下载的修复方法【解答】
如何使用Golang实现微服务状态监控_Golang服务运行状态采集方法
php转mp4怎么保留字幕_php处理带字幕视频转换说明【说明】
Win11怎么连接投影仪_Win11多显示器投屏设置指南【步骤】
如何在Windows中创建新的用户账户?(标准与管理员)
Mac如何修改Hosts文件?(本地开发与屏蔽网站)
Win11键盘快捷键大全_Windows 11常用高效快捷键汇总【技巧】
如何使用正则表达式提取以编号开头、后接多个注解的逻辑分组块
如何在 Go 中调用动态链接库(.so)中的函数
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
c++ reinterpret_cast怎么用 c++最危险的类型转换【详解】
Win11怎么关闭触摸键盘图标_Windows11任务栏系统托盘设置
如何使用Golang实现函数指针_函数变量与回调示例
如何在Golang中处理二进制数据_Golang io与encoding/binary二进制操作方法
Win11怎么关闭边缘滑动手势_Windows11禁用触摸屏边缘操作
Win11输入法切换快捷键怎么改_Windows 11自定义语言切换键位【教程】
Win11文件扩展名怎么显示 Win11查看文件后缀名设置【步骤】
Python数据抓取合法性_合规说明【指导】
C++中引用和指针有什么区别?(代码说明)
Python多进程教程_multiprocessing模块实战
网站体验不好=浪费钱:如何提升-用户体验效果差
Windows电脑键盘突然失灵怎么办?(驱动与硬件排查)
如何测试您的网站全球打开速度-网站海外测速工
如何在Golang中编写异步函数测试_Golang异步操作测试策略
LINUX怎么进行文本内容搜索_Linux grep命令正则表达式用法大全【教程】
如何从 Go 的 map[string]interface{} 中安全获取值
Win11怎么查看激活状态_查询Windows 11是否已永久激活【详解】
2025-12-17
致胜网络推广营销网专注海外推广十年,是谷歌推广.Facebook广告全球合作伙伴,我们精英化的技术团队为企业提供谷歌海外推广+外贸网站建设+网站维护运营+Google SEO优化+社交营销为您提供一站式海外营销服务。