私はSMILアニメーションを使ってsvgローダーアニメーションを作成しました。クラス名、つまりloader
を追加するだけで、要素内にsvgを表示しています。SVGアニメーションをクラス追加するだけで
Fiddle(ローダーを表示するには、コンテナのクリック)
.loader{
position: relative;
}
/* image */
.loader::before {
background-image: url('loader.svg');
/* other properties */
}
/* blocker */
.loader::after {
/* other properties */
}
しかし、今、私はSMIL is deprecated in chromeを実現。だから、私はCSSを使ってアニメーションを扱うことにしました。しかし、もし私がcssを使ってアニメーションを扱うならば、私は上でやっているように、つまりクラスを追加するだけで、コードを管理することができなくなります。
私はCSSアニメーションを使用している場合は、コンテナ内に新しい要素を追加し、インライン - svgの概念、IMOを使用する必要があります。
CSSのアニメーションを使用するときにクラスを追加するだけでアニメーションを管理できますか?
いくつかのポイント:
- 私は、新しい要素を追加する必要はありません。
- JavaScriptを使用してクラスを追加するだけです。
- gif(ラスターイメージ)を生成したくありません。
私はSMILとCSSアニメーションの両方のためのフィドル持っている:私はちょうどそれが保持されるため、アニメーションを管理するためのクラスを追加するためにのみ制限されています
を私コードを整理し、また、CSSアニメーションでもそうすることが可能だと私は思っています。
私は、彼らは廃止しているとして、SMILアニメーションを使用することをお勧めします、とすべきではないでしょうすぐに落ちる。 SVGをアニメーション化する唯一の「真の」方法はCSSアニメーションです(WebアニメーションAPI(https://w3c.github.io/web-animations/)) – zessx
@zessx私のポストでも同じことを言います。 –
それは逃した! – zessx