了解 CSS 中的层叠和流动样式
使用 CSS 时,基本概念之一是了解如何将样式应用于网页。 **“级联”**正是定义当同一个元素有多种样式时浏览器如何决定应用哪些 CSS 规则的机制。理解样式流和级联的工作原理不仅可以提高我们作为开发人员的技能,而且还可以帮助我们编写更干净、更高效、更易于维护的 CSS 代码。
CSS 中的 Cascade 是什么?
层叠是 CSS 用来确定将哪些样式应用到页面元素的过程。该过程遵循基于三个主要因素的某些规则和优先事项:
级联评估这些规则以决定应该应用哪种风格。如果两个规则具有相同的特殊性级别,并且都没有使用 !important ,则浏览器将按照声明的顺序应用最靠近样式表末尾的规则。
Style Flow 的工作原理
CSS 中的样式流是指根据样式规则的特殊性和位置应用样式规则的顺序。让我们分解一下最重要的几点:
**基本级联示例**
让我们想象一个元素从不同地方应用了多条规则:
**HTML**

假设我们的 CSS 中有以下规则
**CSS**

在这种情况下,文本将显示为蓝色,因为它是级联中定义的最后一个声明,并且它也具有与前一个声明相同的特殊性。
但你可能会遇到这种情况,即使特异性和级联相同,你也会看到显著的变化。
**CSS**

在这种情况下,文本将显示为绿色,因为规则 **color: green !important;** 由于使用了 **!important** 而具有最高优先级,这忽略了特殊性和级联。
申报顺序示例
正如我之前提到的,如果我们有两个具有相同特殊性但在不同位置声明的规则,则将应用样式表中较低的规则:

该段落将呈现红色,因为该规则是在确定黑色的规则之后声明的。
管理 Cascade 和 Style Flow 的最佳实践
可视化特异性和级联的工具
有一些在线工具和浏览器扩展可让您直观地看到选择器的特殊性,并查看应用于特定元素的样式流程。例如:
概括
层叠和样式流是 CSS 的基本原则,但很好地理解它们可以对我们组织和管理样式的方式产生很大的影响。通过了解级联的工作原理,我们可以构建我们的 CSS,使其**更干净、更高效、更易于维护**。
现在您已经了解了级联,您将能够更好地控制 CSS 样式并避免意外覆盖!