2009-09-22 84 views
2

有没有人曾经使用SVG的图像精灵?我希望用一些可缩放的SVG图像替换一堆非常类似的GIF和JPG,但图像渐变和按钮形状规格会扩大SVG。SVG图像精灵?可能与否?

如果我能创造一个复合图,那么我也许能重用梯度和底座的按钮形状等。我只是不知道是否有可能引用(比如说)CSS文件内SVG图像。我认为它不是,因为必须通过嵌入或对象标签而不是img标签来使用SVG。

也许我可以编程方式,例如使用jquery,获取主SVG文档的片段,并使用它来按需组合SVG图像。但我认为这会很慢?

感谢,

安德鲁·马修斯

+0

请记住,在本机上不支持svg。如果您的目标受众使用IE,那么您最好找到另一条路线。 – 2009-09-22 03:32:24

+0

您好马修,我想回到IE的情况下的GIF,但我想用Chrome作为我的展示演示平台 - 该应用程序是非常密集的JS。 – 2009-09-22 03:47:23

+0

我想出了一个轻量级的方法来做到这一点,这将很适合你正在尝试做的事情。看到这个问答: http://stackoverflow.com/questions/11978995/how-to-change-color-of-svg-image-using-css-jquery-svg-image-replacement/ – 2012-08-16 00:11:43

回答

1

这是我在<img>和供绘制<canvas>纯元素的形式使用SVG的例子,在Opera 9.5及以上IIRC的工作原理:

http://dahlström.net/svg/presentations/svgdemos/canvas2d.html

Webkit也可以在<img>元素中使用svg,上面的示例在我刚刚测试的Epiphany webkit版本中工作过(需要刷新才能看到老虎,但它如预期那样被画在画布上)。

+0

谢谢,埃里克。 这是否意味着我可以在使用Opera时从CSS样式表中引用SVG文件?即可能使用url(...)元素作为按钮背景? – 2009-09-23 01:23:51

+0

是的,支持。一些例子:http://a.deveria.com/?p = 76 – 2009-09-23 15:26:37