3

我们第一次将 SVG 用于我们基于 HTML5 的移动应用精灵文件(它们使处理视网膜和其他屏幕尺寸差异变得容易)。

我知道生成的 SVG 可以直接操作(因为它们是文本文件),但是可以通过 CSS 或脚本修改 SVG 资产(在这种情况下,是通过 CSS 加载的背景图像)吗?

例如,我们可以加载一个全黑的 SVG 对象,然后将其更改为白色吗?

4

1 回答 1

6

img如果 SVG 文件作为图像加载(通过或background-image),您将无法访问 DOM 。您也不能通过 CSS 对其进行样式设置。

如果您打算进行此类操作,则应将 SVG 附加到div. 您仍然应该能够对该 div 执行类似精灵的操作。您将能够通过 CSS 或 javascript 对其进行样式设置。


SVG 应该是内联的。background-image您可以通过 ajax 请求将 SVG 复制并粘贴到用于包含或加载它的 div 中。

background-position您可以使用left或来代替动画-webkit-transform: translate(...)

于 2012-11-15T05:19:36.067 回答