我想在我的页面中使用 svg 图标。与我合作的设计师使用 Sketch 设计图像并将结果导出为 svg。Sketch 将各种id
标签添加到导出的代码中(注意id="Page-1"
,id="My-Star"
和id="Star-1"
属性):
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="My-Star" stroke="#979797" fill="#D8D8D8">
<polygon id="Star-1" points="11.9860934 18.5835921 5.4876995 22 6.7287823 14.763932 1.47147118 9.63932023 8.73689646 8.58359214 11.9860934 2 15.2352904 8.58359214 22.5007157 9.63932023 17.2434045 14.763932 18.4844873 22 "></polygon>
</g>
</g>
</svg>
我将 svg 直接包含在 html 中。通过这样做,我id
多次介绍相同的内容。除了这种工作方式导致的无效 html 之外,我还需要基于id
s 设置 svg 元素的样式。这是一个不好的做法。
我使用 css 来设置 svgs 的样式,看一个例子
问题:从 Sketch 导出 svg 时,
有没有办法id
用 es 替换 s ?class
我可以给设计师一些插件或设置吗?如果不是,从设计师那里接收 svg 资产并在页面中使用它的最佳工作流程是什么?