SVG ローディングスピナー生成器
ガイド
SVG ローディングスピナー生成器
ブラウザ内でクリアでアニメーションされたSVG読み込みスパinerを構築し、プロジェクト用に使用可能なマーカーをコピーできます。7つの人気スパinerスタイルから選択し、サイズ、線の幅、色、アニメーションスピードを調整し、リアルタイムでライブプレビューが更新されます。インラインSVG、HTML + CSSスニペット、またはReact JSXコンポーネントとしてエクスポートできます。
使用方法
- [ブラウザのchrome]を選択し、 スパinerタイプ — 円の線描画、ダブルリング、ドットリング、パルスドット、バウンスドット、バー読み込み、またはリップル。
- 調整 サイズ, 線の幅, メインカラーと、 トラック/セカンダリカラー ブランドに合わせます。
- [名前]を設定してください アニメーションスピード (秒単位)で読み込みサイクルのスピードを制御します。
- を選択してください 出力形式: インラインSVG(1ファイル、どこでも使用可能)、HTML + CSS(別個のスタイルブロック)、またはReactコンポーネント(JSX)。
- 出力パネルから生成コードをコピーするか、ファイルとしてダウンロードします。
機能
- 7つのスパinerスタイル — 円の線描画、ダブルリング、ドットリング、パルスドット、バウンスドット、バー読み込み、リップル。
- リアルタイムアニメーションプレビュー チェックパターンの背景上に表示され、色の選択を一目で判断できます。
- 自立型インラインSVG — アニメーションCSSはSVG内に埋め込まれており、外部スタイルシートなしで動作します。
- HTML + CSS スタイルブロックを別にエクスポートする場合、マーカーとスタイルを分離したい場合に使用します。
- Reactコンポーネント(JSX) Next.js、Vite、またはCreate React Appプロジェクトに貼り付ける準備ができています。
- サイズ、線の幅、色、スピードのカスタマイズ 合理的なデフォルト値とバリデーション付きです。
- アクセシビリティが組み込まれています — すべてのスパinerに
role="status"および調整可能なaria-labelにより、スクリーンリーダーが読み込み状態を発声します。 - スコープ付きクラス名 各スニペットごとに設定されており、同じページに複数のスパinerがある場合でも衝突しません。
各スパinerの使用タイミング
- 円の線描画 / ダブルリング — プログレスが不明な「不定」の待ち時間(API呼び出し、ページ遷移など)に使用します。
- ドットリング — サブテクスチャーの「考え中」のインジケータで、UIとの調和が良好です。
- パルスドット / バウンスドット — チャットの「タイプ中」のようなフレンドリーで会話的なコンテキストに使用します。
- バー読み込み — ファイルのアップロード、ダウンロード、または広い低プロファイルのインジケータが必要な場所に使用します。
- Ripple — コンテンツが表示される直前のソフトで、環境的なフィードバックを提供します。
よくある質問
-
なぜ読み込みスパinerにSVGを使用するのか?
SVGはベクター形式なので、スパinerはどんなサイズでもどんなピクセル密度でも正確に鋭いままです。ファイルサイズは小さい(通常は数百バイト)で、色はCSSでリアルタイムに変更可能であり、アニメーションは一時停止、再開、またはスタイル変更が可能で、再エンコードなしに処理できます。対照的に、GIFはレターフォント形式であり、サイズが大きい、エッジ部分で損失があり、色やスピードはファイルがエクスポートされたときに固定されています。
-
決定的と不定の読み込みインジケータの違いは?
決定的インジケータは、0から100までの実際の進捗を示すもので、例えばプログレスバーが0から100まで埋まるように表示します。不定インジケータは、期間や進捗が測定できない場合に、ユーザーに「作業が進行中」という情報を伝えます。例えば、ネットワーク応答を待つときです。ほとんどのスパiner(回転円、パルスドット、リップル)は不定であり、バー読み込みは、動くスライスを表示するか、埋まる割合を表示するかによって、決定的または不定になります。
-
読み込みスパinerを表示すべきタイミングは?
一般的なユーザビリティガイドラインとして、100ms未満のアクションにはインジケータを表示しないでください。UIは即時性を感じます。100msから1秒までの間は、影響を受けたコントロールの近くに小さなインジケータを表示すれば十分です。1秒を超える場合、明確なスパinerを使用します。10秒を超える場合、意味のあるメッセージを含む決定的進捗インジケータに切り替えなければなりません。ユーザーはシステムがまだ動作しているかを信頼できなくなるからです。
-
SVG内のCSSアニメーションはどのように機能するか?
CSSアニメーションは、HTML要素と同じようにSVG要素をターゲットとしています:キーフレームルールを書き、animationプロパティにクラスを適用します。一般的なターゲットには、回転変換(スピン)、透過度(フェード)、および円や線の描画効果(stroke-dashoffset)があります。形状の視覚中心に回転をピボットさせるには、transform-originをそのポイントに設定します。SVG自体にスタイル要素を含むアニメーションは、そのドキュメントにスコープを保持しており、そのため、自立型SVGはどこにでも挿入できるようになります。
-
読み込みスパinerをスクリーンリーダーにアクセス可能にするにはどうすればよいですか?
スパiner要素にrole=status(またはrole=progressbarで決定的進捗)を設定し、補助技術が更新をライブ領域として扱います。短く意味のあるaria-label(例:LoadingまたはSaving)を提供し、状態を発声し、色だけに頼らず状態を伝えるようにします。決定的進捗の場合は、aria-valuenow、aria-valuemin、およびaria-valuemaxを設定し、パーセンテージが更新されるときに発声されます。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
