欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

css 层叠是什么

程序员文章站 2022-03-04 23:05:04
...

css层叠是CSS的一个基本特征,它是一个定义了如何合并来自多个源的属性值的算法;CSS层叠性是指CSS样式在针对同一元素配置同一属性时,依据层叠规则来处理冲突,选择应用权重高的CSS选择器所指定的属性。

css 层叠是什么

本文操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。

什么是css层叠?

层叠是CSS的一个基本特征,它是一个定义了如何合并来自多个源的属性值的算法。它在CSS处于核心地位,CSS的全称层叠样式表正是强调了这一点。

CSS层叠性是指CSS样式在针对同一元素配置同一属性时,依据层叠规则(权重)来处理冲突,选择应用权重高的CSS选择器所指定的属性,一般也被描述为权重高的覆盖权重低的,因此也称作层叠。

每个CSS选择器都会有一个权重,当两个选择器同时配置同一元素的同一属性时(比如一个设置color:red,另一个color:black),就会产生冲突,而解决冲突的方案就是CSS选择器的权重,权重高的来覆盖权重低的。

层叠性指的是上级标签的样式会自动继承到其所有下级标签,如针对<body>设置的标签选择器所设的字体样式会自动应用到<body>下的<p>中,除非<p>重写了相关样式将其覆盖。

层叠性指的是样式的优先级,当产生冲突时以优先级高的为准:

  • 开发者样式>读者样式>浏览器样式(除非使用!important标记 )

  • id选择符>(伪)类选择符>元素选择符

  • 权重相同时取后面定义的样式

CSS层叠算法期望通过挑选CSS声明来给CSS属性设置正确的值。CSS声明可以有不同的来源:

1、浏览器会有一个基本的样式表来给任何网页设置默认样式。这些样式统称**用户代理样式**。一些浏览器通过使用真正的样式表,而其他则通过代码模拟,但无论是哪种情形都应是不可被检测的。

而且部分浏览器允许用户修改用户代理样式。尽管HTML标准对用户代理样式做了诸多限制,浏览器仍大有可为,具体表现在不同浏览器间会存在重大的差异。

为了减轻开发成本以及降低样式表运行所需的基本环境,网页开发者通常会使用一个CSS reset样式表,强制将常见的属性值转为确定状态。

2、网页的作者可以定义文档的样式,这是最常见的样式表。大多数情况下此类型样式表会定义多个,它们构成网站的视觉和体验,即主题。

3、读者,作为浏览器的用户,可以使用自定义样式表定制使用体验。

尽管CSS样式会来自这些不同的源,但它们的作用范围是重叠的,而层叠算法则定义了它们如何相互作用。

【推荐学习:css视频教程

以上就是css 层叠是什么的详细内容,更多请关注其它相关文章!

相关标签: css