3 ステップ進捗インジケータ
このスニペットは、入力・確認・完了といったフォームの進み具合を示す 3 段階のステップインジケータです。マークアップは nav の中の ol で意味づけし、各 li に番号の丸とラベルを置いています。
解説
このスニペットは、入力・確認・完了といったフォームの進み具合を示す 3 段階のステップインジケータです。マークアップは nav の中の ol で意味づけし、各 li に番号の丸とラベルを置いています。完了した段階には is-done、現在の段階には is-act というクラスを付けるだけで色が切り替わる設計で、ステップをつなぐ横線は ol::before の疑似要素で引いています。
使う場面
- 会員登録や購入手続きなど、複数画面にまたがるフォーム
- 申し込みウィザードで、今どこにいるかを示したいとき
- オンボーディングの進行表示
状態の切り替えはクラスの付け外しだけなので、サーバー側でも JavaScript でも制御できます。ステップ数を増やすときは li を足し、横線の left と right の余白値を見直してください。アクセシビリティ面では、nav に aria-label を付けてあり、現在地を明確にするため aria-current を現在のステップに追加するとさらに読み上げに親切です。色は丸の背景色を変えるだけでブランドに合わせられます。
よくある質問
ステップ数を 4 つ以上にできますか
できます。li 要素を必要な数だけ追加してください。要素を flex で均等配置しているため自動で広がりますが、ステップをつなぐ横線の左右の余白だけ、数に合わせて微調整すると見栄えが整います。
現在のステップの色を変えたいときは
is-act クラスが付いた要素の番号の丸の背景色を変更してください。完了済みは is-done のスタイルで色分けしているので、両方を調整するとブランドカラーに揃えられます。