Linux265
  • 首页
  • 资讯
  • 发行
  • 游戏
  • 软件
  • 教程
  • 书籍
  • 截图
  • 工具
  • 名站
  • 资源
  • 命令
  • VPS
如果您喜欢{Linux265},请告诉您身边的朋友,谢谢! 首页 > 教程 > CSS 教程 >CSS 特异性
CSS 教程
CSS 教程
CSS 简介
CSS 语法
CSS 选择器
CSS 使用
CSS 背景样式
CSS 文本格式
CSS 字体样式
CSS 链接样式
CSS 列表样式
CSS 表格样式
CSS 盒子模型
CSS 边框样式
CSS 轮廓样式
CSS margin 外边距
CSS padding 内填充
CSS 尺寸样式
CSS 显示样式
CSS 定位样式
CSS 溢出控制
CSS float样式
CSS 对齐样式
CSS 组合器
CSS 伪类
CSS 伪元素
CSS opacity 透明度
CSS 媒体类型
CSS 属性选择器
CSS 计数器
CSS 单位
CSS 特异性
CSS 应用示例
CSS 响应式设计
响应式网页设计
网页设计-Viewport
网页设计 - 网格视图
网页设计 - 媒体查询
网页设计 - 图片视频
CSS 参考手册
CSS 参考手册
CSS 选择器
CSS 听觉参考手册
CSS Web安全字体组合
CSS 动画

CSS 特异性

CSS 单位 CSS 应用示例

什么是CSS特异性?

如果有两条或两条以上指向同一元素的冲突 CSS 规则,则浏览器将遵循一些原则来确定哪一条是最具体的,并因此胜出。

将特异性(specificity)视为得分/等级,能够确定最终将哪些样式声明应用于元素。

通用选择器(*)具有较低的特异性,而 ID 选择器具有较高的特异性!

注意:这种特异性是 CSS 规则不适用于某些元素的常见原因,尽管您可能会认为应该适用。

CSS 特异性层次

每个选择器在特异性层次结构中都有其位置。以下四种类别定义了选择器的特异性级别:

行内样式 - 行内(内联)样式直接附加到要设置样式的元素。实例:<h1 style="color: #ffffff;">。

ID - ID 是页面元素的唯一标识符,例如 #navbar。

类、属性和伪类 - 此类别包括 .classes、[attributes] 和伪类,例如::hover、:focus 等。

元素和伪元素 - 此类别包括元素名称和伪元素,比如 h1、div、:before 和 :after。

CSS 如何计算特异性?

请您牢记计算特异性的方法!

从 0 开始,为 style 属性添加 1000,为每个 ID 添加 100,为每个属性、类或伪类添加 10,为每个元素名称或伪元素添加 1。

请思考以下三个代码片段:

示例

A: h1
B: #content h1
C: <div id="content"><h1 style="color: #ffffff">Heading</h1></div>
  • A 的特异性为 1(一个元素)
  • B 的特异性为 101(一个 ID 引用以及一个元素)
  • C 的特异性为 1000(行内样式)

由于 1 < 101 < 1000,因此第三条规则(C)具有更高的特异性,所以将被应用。

CSS 特异性规则 1:

在特异性相同的情况下:最新的规则很重要 - 如果将同一规则两次写入外部样式表,那么样式表中后面的规将更靠近要设置样式的元素,因此会被应用:

示例

h1 {background-color: yellow;}
h1 {background-color: red;}

试一试

后一条规则始终适用。

CSS 特异性规则 2:

ID 选择器比属性选择器拥有更高的特异性 - 请看以下三行代码:

示例

div#a {background-color: green;}
#a {background-color: yellow;}
div[id=a] {background-color: blue;}

试一试

第一条规则比其他两条更具体,因此将被应用。

CSS 特异性规则 3:

上下文选择器比单一元素选择器更具体 - 嵌入式样式表更靠近要设置样式的元素。所以在以下情况下:

示例

来自外部 CSS 文件:

#content h1 {background-color: red;}

在 HTML 文件中:

<style>
#content h1 {
  background-color: yellow;
}
</style>

将适用后一条规则。

CSS 特异性规则 4:

类选择器会击败任意数量的元素选择器 - 类选择器(诸如 .intro 会击败 h1、p、div 等):

示例

.intro {background-color: yellow;}
h1 {background-color: red;}

试一试

此外,通用选择器以及被继承的值拥有 0 - * 的特异性,body * 及类似拥有 0 的特异性。被继承的值的特异性也为 0。

CSS 单位 CSS 应用示例
分类导航
HTML 基础教程
HTML 参考手册
HTML5 教程
CSS 教程
CSS3 教程
AD

站点信息

意见反馈

免责声明

关于本站

联系站长

站点导航

综合资讯

发行版

游   戏

软   件

教   程

书   籍

截   图

工   具

名   站

免费资源

Linux265资源分享网,简称Linux265,是一个致力于分享Linux相关资讯,推广Linux发行版,分享Linux游戏,分享Linux各种优秀实用软件,分享Linux相关教程的资源分享站。本站建立的宗旨是通过分享,让更多的人了解Linux,学习Linux,使用Linux,喜欢Linux。

关注本站: 欢迎投稿

关注公众号:

Copyright@2017-2018 Linux265. 豫ICP备16021824号-1 Powered by Linux265资源分享网