【问题标题】:CSS Cascading rules W3C explanation plsCSS级联规则W3C解释请
【发布时间】:2016-04-21 10:16:07
【问题描述】:

所以我们有 w3c 标准来说明 CSS 在应用时的优先级:

根据重要性(正常或重要)和来源(作者、用户或用户代理)排序。按优先级升序排列:

  1. 用户代理声明(来自用户代理?(标准样式))

  2. 用户正常声明

  3. 作者正常声明

  4. 重要声明(由我使用 !important 标志)

  5. 用户重要声明

但是它没有解释它的含义。只是转储一个声明。什么是用户正常声明?等等这是什么意思?

我知道当你应用 CSS 顺序是这样的:

  1. 来自用户代理的第一个样式
  2. 比来自外部文档的样式
  3. 标签内的样式
  4. 内联样式

我的问题是:这 5 条规则分别意味着什么?

【问题讨论】:

  • 我认为更重要的是特异性,因为如果一个规则比其他规则更具体,即使第二个是“作者正常声明”,也会应用第一个。
  • 这个问题要么太宽泛,要么基于观点,要么需要讨论,因此与 Stack Overflow 无关。如果您有具体的、可回答的编程问题,请提供完整的详细信息。
  • "我知道当你应用 CSS 顺序时是这样的......" 不,不是。顺序是 DOM 的顺序,后面的规则优先于具有相同特性的前面的规则。 “作者”是指你。 “用户”是指用户。 “正常”意味着没有!重要。 "important" 表示 !important。
  • 1:浏览器默认样式 2:外部样式表 3: 中的内部样式。 4:内联样式。更高的数字优先
  • 用户是指用户?什么用户?用户代理?

标签: css cascading


【解决方案1】:

您说的是我假设的以下规范:W3C Spec

如您所见,“6.4 The cascade”中有不同来源和级联顺序的描述。

简而言之就是:

  1. 用户代理声明:使用的用户代理(浏览器)的标准样式
  2. 用户正常声明:用户声明的自定义样式
  3. 作者正常声明:网站作者声明的样式
  4. 作者重要声明:3. 使用“!important”规则
  5. 用户重要声明:2. 使用“!important”规则

术语“用户”代表访问网站的人。

不幸的是,用户定义的 CSS 的使用并不是很流行,所以这个顺序也不是很流行......

【讨论】:

  • 感谢您的回答。用户如何为页面创建 css 大声笑?使用控制台?
  • AFAIK 用于实现自定义(用户定义)样式表的可能性的每个常见 Web 浏览器。主要是通过编辑一个特殊的 css 文件或包括你自己的。到目前为止(因为它还没有被使用过)它已经从 Chrome 中删除了,在 Firefox 中有一个可以添加样式表的文件,但它隐藏得很好(参见ffeathers.wordpress.com/2013/03/10/…)。
  • 真正能从用户样式表中受益的人是那些有特殊视力障碍的人。有些人只阅读白底蓝字的文字,而另一些人可能只看黑底黄字。用户样式表允许他们覆盖作者的方案以帮助解决他们的特殊困难。
  • @Alohci 请注意,对于您提到的特定示例,在 Firefox 的“选项”对话框中设置“用我上面的选择覆盖页面指定的颜色”就足够了。无需为用户样式表大惊小怪!
猜你喜欢
  • 2021-11-24
  • 2011-03-30
  • 2023-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-26
相关资源
最近更新 更多