我们第一次将 SVG 用于我们基于 HTML5 的移动应用精灵文件(它们使处理视网膜和其他屏幕尺寸差异变得容易)。
我知道生成的 SVG 可以直接操作(因为它们是文本文件),但是可以通过 CSS 或脚本修改 SVG 资产(在这种情况下,是通过 CSS 加载的背景图像)吗?
例如,我们可以加载一个全黑的 SVG 对象,然后将其更改为白色吗?
我们第一次将 SVG 用于我们基于 HTML5 的移动应用精灵文件(它们使处理视网膜和其他屏幕尺寸差异变得容易)。
我知道生成的 SVG 可以直接操作(因为它们是文本文件),但是可以通过 CSS 或脚本修改 SVG 资产(在这种情况下,是通过 CSS 加载的背景图像)吗?
例如,我们可以加载一个全黑的 SVG 对象,然后将其更改为白色吗?
img
如果 SVG 文件作为图像加载(通过或background-image
),您将无法访问 DOM 。您也不能通过 CSS 对其进行样式设置。
如果您打算进行此类操作,则应将 SVG 附加到div
. 您仍然应该能够对该 div 执行类似精灵的操作。您将能够通过 CSS 或 javascript 对其进行样式设置。
SVG 应该是内联的。background-image
您可以通过 ajax 请求将 SVG 复制并粘贴到用于包含或加载它的 div 中。
background-position
您可以使用left
或来代替动画-webkit-transform: translate(...)
。