1
CSSでsvg-spriteをアニメーション化しようとしました。 私はスプライトを作成し、一息からそれを注入しました:SVGシャドウルートが閉じています
gulp.task('svgstore', function() {
var svgs = gulp
.src('app/svg/*.svg')
.pipe(svgmin(function (file) {
return {
plugins: [{
cleanupIDs: {
minify: true
}
}]
}
}))
.pipe(svgstore({ inlineSvg: true }));
function fileContents (filePath, file) {
return file.contents.toString();
}
return gulp
.src('app/*.html')
.pipe(inject(svgs, { transform: fileContents }))
.pipe(gulp.dest('app/'))
});
...とHTMLにスプライトから画像を挿入:
<svg class="icon-ufo" >
<use xlink:href="img/sprite.svg#ufo" aria-hidden="true"></use>
</svg>
そして、それはうまく動作しますが、以下の画像は、影のDOMを示し閉じています。 JavaSciptなく、このSVGのいくつかのスタイルをアニメーション化する方法私ができる
?しかし、JavaSciptが唯一の方法であれば、どうすればよいでしょうか?
_fill_のような__path__属性はどうですか? –
@yuяi 'fill'は[プレゼンテーション属性](https://www.w3.org/TR/SVG11/styling.html#UsingPresentationAttributes)です。つまり、属性として記述できますが、スタイルとして扱われます要素のルールがユーザースタイルシートの先頭に挿入されました。 – ccprog