【问题标题】:Quick couple of CSS inheritance questions几个简单的 CSS 继承问题
【发布时间】:2012-02-15 01:00:59
【问题描述】:

W3C 网站上,边框样式属性(例如)被标记为继承的“否”,但允许的值之一是“继承”。这是为什么呢?

在这种情况下,继承的“否”是否意味着默认值不继承? 如果是这样,那么无论如何我都可以通过查看默认值“none”来看到这一点。

其次,我认为“继承”值不能用于简写语句中的单个属性是否正确?

【问题讨论】:

  • “其次,我认为'inherit'值不能用于速记语句中的单个属性是否正确?”比如“边框2px继承”?
  • 是的,考虑它是不可能的,因为解析器不知道继承值应用于哪个属性。

标签: css inheritance shorthand


【解决方案1】:

这意味着如果您有一个带边框的 DIV 和另一个 DIV,则里面的 DIV 不会自动采用父级的边框属性。您可以在子元素上使用“inherit”强制继承。

这与自动继承的字体大小定义等不同。

【讨论】:

    【解决方案2】:

    符号“继承:否”表示“正常”继承不适用。在“正常”继承中,如果没有样式表为元素的属性分配值,则使用元素父级的属性值。我在引号中使用“正常”,因为这仅适用于某些属性,如“继承:否”符号所示。

    特殊值inherit 完全不同。使用时,声明的整个值部分必须仅包含单词inherit,并且它只是声明属性值与元素的父元素的值相同(无论属性是什么)。与CSS 2.1 spec says 不同,这并不强制或“强制”继承;声明参与了级联,它可能会输给其他规则(正如您可能从使用 !important 说明符的示例中猜到的那样)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-16
      • 1970-01-01
      • 2013-04-01
      相关资源
      最近更新 更多