SVG 图像精灵?可能还是不可能?
有人用过 SVG 来制作图像精灵吗?我希望用一些可扩展的 SVG 图像替换一堆非常相似的 GIF 和 JPG,但图像渐变和按钮形状规范使 SVG 变得臃肿。
如果我可以创建一个复合图,那么我也许能够重用渐变和基本按钮形状等。我只是不确定是否可以在(比如说)CSS 文档中引用 SVG 图像。我认为不是,因为必须通过嵌入或对象标签而不是 img 标签使用 SVG。
也许我可以通过编程方式(例如使用 jquery)获取主 SVG 文档的片段并使用它来按需组合 SVG 图像。但我认为这会很慢?
谢谢,
安德鲁·马修斯
Has anyone ever used SVG for image sprites? I wish to replace a bunch of very similar GIFs and JPGs with some scalable SVG images, but the image gradient and button shape specifications bloat out the SVG.
If I could create a composite diagram, then I might be able to reuse the gradients and base button shapes etc. I'm just not sure whether it's possible to reference SVG images inside of (say) a CSS document. I assume it's not, since one must use SVG via embed or object tags rather than img tags.
Perhaps I could programmatically, using jquery for example, take fragments of the master SVG doc and use it to compose SVG images on demand. But I assume that would be pretty slow?
Thanks,
Andrew Matthews
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
下面是我在
中使用 SVG 并以纯元素形式绘制到
的示例,适用于 Opera 9.5 及更高版本 IIRC:
http://dahlström.net/svg/presentations/svgdemos/canvas2d.html
Webkit 还在
元素中执行 svg,上面的示例在我刚刚测试的 Epiphany webkit 版本中可以正常工作(需要刷新才能看到老虎,但它被吸引到画布如预期)。
Here's my example of using SVG in
<img>
and in pure element form for drawing to<canvas>
, works in Opera 9.5 and up IIRC:http://dahlström.net/svg/presentations/svgdemos/canvas2d.html
Webkit also does svg in
<img>
elements, and the above example sort of worked in the Epiphany webkit version I tested just now (needed a refresh to see the tiger, but it was drawn to the canvas as expected).