CSS Specificity
CSS的specificity特性或称非凡性,它是一个衡量CSS值优先级的一个标准。
其实就是解决冲突,当同一个元素被CSS选择符选中,按照优先权取舍不同的CSS规则。
specificity用一个四位数字串(CSS2是三位)来表示,值从左到右,左面最大,一级大于一
级,数位间没有进制,级别间不可超越。
Inline Styling, Identifiers, Classes, Elements
多个选择符应用于同一个元素上那么specificity值高的最终获得优先级。
选择符Specificity值列表:
| Selectors 选择符 |
Syntax Samples 语法 |
ensample 示例 |
Specificity 特性 |
| 通配选择符(Universal Selector) | * | *.div { width:560px;} | 0,0,0,0 |
| 类型选择符(Type Selectors) | E1 | td { font-size:12px;} | 0,0,0,1 |
| 伪类选择符(Pseudo-classes Selectors) | E1:link | a:link { font-size:12px;} | 0,0,1,0 |
| 属性选择符(Attribute Selectors) | E1[attr] | h[title] {color:blue;} | 0,0,1,0 |
| ID选择符(ID Selectors) | #sID | #sj{ font-size:12px;} | 0,1,0,0 |
| 类选择符(Class Selectors) | E1.className | .sjweb{color:blue;} | 0,0,1,0 |
| 子对象选择符(Child Selectors) | E1 > E2 | body > p {color:blue;} | E1+E2 |
| 相邻选择符(Adjacent Sibling Selectors) | E1 + E2 | div + p {color:blue;} | E1+E2 |
| 选择符分组(Grouping) | E1,E2,E3 | .td1,a,body {color:blue;} | E1+E2+E3 |
| 包含选择符(Descendant Selectors) | E1 E2 | table td {color:blue;} | E1+E2 |
例子:
h1 {color: red;}
/* 只有一个类型选择符,结果是 0,0,0,1 */
body h1 {color: green;}
/* 包含选择符,结果是 0,0,0,2 */
/*后者胜出*/
另外一些规则:
1.行内样式优先级高于外部定义。 行内样式就是如<div style=”color: red”>blah</div>
,外部定义指经由<link>或<style>标签定义的规则。
2.!important声明的specificity值最高
3.specificity值一样的情况下,按CSS代码中出现的顺序决定,较后的CSS样式会覆盖前面的
CSS样式
4.由继承而得到的样式没有specificity的计算,它低于一切其他规则(比如通配选择符*定
义的规则)
CSS Specificity的更多相关文章
- CSS特异性(CSS Specificity)的细节之CSS样式权重的计算与理解(CSS样式覆盖规则)
本篇讲解CSS特异性(CSS Specificity)的细节,也就是CSS样式选择器的权重计算 通过计算选择器的权重(weight)最终决定哪个选择器将获得优先权去覆盖其他选择器的样式设定,即“优先原 ...
- CSS Specificity(特殊性)
CSS的特殊性是非常重要却又经常被忽视的属性,特别是在团队合作下的产品迭代开发中,因为不注重CSS的特殊性最后导致某些代码混乱不堪,这里就把自己对CSS特殊性的认识做一些归纳总结. CSS的特殊性(s ...
- css优先级问题
关于CSS specificityCSS 的specificity 特性或称非凡性,它是衡量一个衡量CSS值优先级的一个标准,既然作为标准,就具有一套相关的判定规定及计算方式,specificity用 ...
- CSS选择器的特殊性和LOVE HA
在CSS中当几个相同的选择器对同一个元素有不同的规则时,该怎么应用这些规则呢? 答案就是:CSS特殊性(CSS specificity) 选择器特殊性有选择器本身组成,特殊性由4个数值表述:0, 0, ...
- CSS魔法堂:选择器及其优先级
一.前言 首先看看一道阿里这期网申的题目吧! 1.找出下面优先级相同的选择器 A. img.thumb:after B.[data-job="frontend"]::firs ...
- css权重是什么
css权重是什么? 概述 css Specificity中文一般译为css优先级.css权重.相比"权重","优先级"更好理解,mozilla官方中文文档就翻译 ...
- css选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先
通配选择符* { sRules } 类型选择符E { sRules } td { font-size:14px; width:120px; } 属性选择符 E [ attr ] { sRule ...
- CSS 层叠及样式表来源
Web标准化运动的口号——分离.分离.分离. 在2003年的 SXSW 会议中, Steve Champeon 和 Nick Finck 做了一个名为“面向未来的全方位 Web 设计”的演讲,揭示了这 ...
- CSS优先级算法是如何计算?
CSS的specificity特性或非凡性,它是一个衡量css优先级的一个标准, 既然的标准就有判定规定和计算方式,specificity用一个四位数来表示, 更像四级从左到右,左的最大级,一级大于一 ...
随机推荐
- service network restart 报错重启失败
Job for network.service failed because the control process exited with error code. See “systemctl st ...
- HDFS 冗余数据保存
- Vue设置element的dialog
1.设置css:参考https://www.jianshu.com/p/a3eb60b75b92 <style> .el-dialog { max-height: 600px; displ ...
- 通过游戏学python 3.6 第一季 第五章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆 可复制直接使用 娱乐 可封装 函数
#猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--账号密码登陆 #!usr/bin/env python #-*-coding:utf-8-*- #QQ12411129 ...
- LUOGU P1937 [USACO10MAR]仓配置Barn Allocation
传送门 解题思路 扫了一眼觉得是贪心+线段树,结果贪心的时候刚开始按区间长度排的序..这还有82分,后来叉了自己,换成按右端点排序过了. 代码 #include<iostream> #in ...
- For循环和闭包问题
考虑一下以下的代码片段: for (var i = 0; i < 5; i++) { var btn = document.createElement('button'); btn.append ...
- 英特尔人工智能圆桌论坛举行 四位大咖论道AI
英特尔人工智能圆桌论坛举行 四位大咖论道AI 2017-04-01 17:57 北京2017年4月1日电 /美通社/ -- 毫无疑问,人工智能已是最具变革力的发展趋势之一,在3月31日举行的2 ...
- spring cloud深入学习(四)-----eureka源码解析、ribbon解析、声明式调用feign
基本概念 1.Registe 一一服务注册当eureka Client向Eureka Server注册时,Eureka Client提供自身的元数据,比如IP地址.端口.运行状况指标的Uri.主页地址 ...
- 在C#应用中使用Common Logging日志接口
我在C#应用中一般使用log4net来记录日志,但如果项目中有个多个工程,那么没有工程都需要引用log4neg,感觉很不爽.不过今日在开spring.net的时候,看到了有个通用日志接口Common ...
- Java问题解读系列之基础相关---含继承时的执行顺序
今天来研究一下含继承.静态成员.非静态成员时Java程序的执行顺序: 一.不含继承,含有静态变量.静态代码块 创建一个子类,该类包含静态变量.静态代码块.静态方法.构造方法 /** * @create ...