我在sag文件中使用带有id的符号标记,如以下链接所述: http://css-tricks.com/svg-symbol-good-choice-icons/
使用grunt任务svgmin放大后,我的所有ID都会从我的svg文件中删除。
我的咕噜声任务如下:
svgmin: {
options: {
plugins: [
{ removeViewBox: false},
{ removeUselessStrokeAndFill: false},
{ removeEmptyAttrs: false }
]
},
dist: {
files: [{
expand: true,
cwd: '<%= yeoman.app %>/images',
src: '{,*/}*.svg',
dest: '<%= yeoman.dist %>/images'
}]
}
},
这个问题有解决方法吗?
答案 0 :(得分:2)
以下适用于我。
svgmin: {
options: {
full: true,
plugins: [
{cleanupIDs: false}, // don't remove ids
{removeViewBox: false}, // don't remove the viewbox atribute from the SVG
{removeUselessStrokeAndFill: false}, // don't remove Useless Strokes and Fills
{removeEmptyAttrs: false} // don't remove Empty Attributes from the SVG
]
},
dist: {
files: [{
expand: true,
cwd: '<%= yeoman.app %>/images',
src: '{,*/}*.svg',
dest: '<%= yeoman.dist %>/images'
}]
}
}
{cleanupIDs:false} 单独无法按here报告的方式运行。解决方案是添加 full:true ,如上面提到的示例所示。我正在使用 “grunt-svgmin”进行测试:“^ 0.4.0” 。
答案 1 :(得分:0)
您需要将cleanupIDs插件设置为false,因为默认设置为true。只需在removeEmptyAttrs行之后添加:
{cleanupIDs:false}
不要忘记上一个大括号之后的逗号:)
以下是您可以禁用/启用的SVGO插件的完整列表:https://github.com/svg/svgo/tree/master/plugins