SVG和外部样式表

时间:2012-06-09 19:28:53

标签: css svg

我在我的网站上使用了一些交互式/动态SVG,作为一项功能,我们可以选择按原样下载.svg文件。

我们发现的一个问题是,当使用外部样式表时,如果用户试图在Inkscape中打开文件,则样式会丢失。所以我一直在设计填充和描边颜色等内嵌元素。

我想知道SVG标准以及样式表如何适应它。 .css文件是否设计为使用.svg文件传输?我知道你可以像这样声明外部样式表:

<?xml-stylesheet type="text/css" href="mystylesheet.css" ?>

如果大多数矢量图形软件位于同一个文件夹中,它们会识别并加载吗?似乎Illustrator没有对SVG的初始支持,但是包含JavaScript和CSS3引擎的附加组件。

我情不自禁地觉得每个人都错过了SVG船。有没有人成功做过这样的事情,用.css包装.svg下载并在各种矢量图形程序中尝试这个?像Inkscape这样的程序在保存SVG时通常会做什么,因为显然有几种方式可以分配样式?

1 个答案:

答案 0 :(得分:3)

我从W3C找到了一些关于SVG查看器一致性的文档,清楚了解其中的一些内容:

SVG Viewer Conformance

Styling with CSS

Styling Alternatives

Common Facilities Used by SVG and CSS

我看到了这一行,

  

符合SVG解释器并符合支持的SVG查看器   需要通用(即基于文本的)XML内容的CSS样式   还支持CSS样式的SVG内容。

这使我相信只有支持CSS的SVG查看器(而不是表示属性)才需要支持外部样式表 - 所以基本上只需要浏览器。

我仍然希望有一个SVG软件包列表,以及每个软件包是否支持外部样式表以及它们如何分配样式,但也许我将不得不为自己做这项研究。