【问题标题】:Is CSS for SVG "standard" CSS?SVG 的 CSS 是“标准”CSS 吗?
【发布时间】:2013-08-27 16:31:18
【问题描述】:

我想使用外部样式表来设置一些 SVG 精灵的样式,详见 Sitepoint tutorial 和 W3C 的 Styling with SVG

然而,CSS 不是很,呃,标准

rect {
  fill: red;
  stroke: blue;
  stroke-width: 3
}

因为它无法通过 W3C CSS Validator 验证。

什么给了?

【问题讨论】:

  • 虽然您使用 css 样式化 SVG,但基本上并非所有 SVG 合法样式都是有效的 css。

标签: html css validation svg


【解决方案1】:

要使用 W3C CSS Validator 验证 SVG,请在“更多选项”下将 profile 更改为 SVG

【讨论】:

    【解决方案2】:

    SVG 的 CSS 是“标准”CSS 吗?

    不,不是。它使用 CSS 语言,但它不在 CSS 属性规范中。它只是 SVG 规范的一部分。这与使用非标准的供应商扩展非常相似,虽然前缀是在 CSS 语法中定义的,但前缀属性实际上并不会仅仅因为它们是非标准的而验证为 CSS。

    您应该在验证代码时选择 SVG 验证配置文件,但它似乎不起作用;它会吐出与根据 CSS 规范进行验证一样多的错误。在这种情况下,它可能是一个验证器错误。

    【讨论】:

      【解决方案3】:

      有些属性是标准的 CSS,例如显示,有些没有;它们仅适用于 SVG 内容,例如填。他们都是listed here

      我认为没有一个易于理解的列表,但如果您单击 SVG specification property list 中的单个属性,例如 display(显示恰好是标准 CSS 属性),那么您会得到这个定义末尾的 SVG 标准中的文本:

      除了本规范中提供的任何附加信息外,“display”属性的规范定义是 CSS2 定义([CSS2],第 9.2.6 节)。

      【讨论】:

        猜你喜欢
        • 2011-06-17
        • 2012-03-28
        • 1970-01-01
        • 2018-03-26
        • 2015-09-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多