HTML辞書ホームへ
HTML要素 辞書 by Sentaro

<progress>

プログレス(Progress)要素。タスクの完了度や進捗状況を示すために使用されます。

info

概要

<progress> 要素は、特定のタスクがどれだけ完了したか(例:ファイルのダウンロード、フォームの完了)を示すための進捗インジケーター(プログレスバー)を作成します。
この要素は、タスクの完了度合いが既知の場合に使用します。完了度が不明な場合は、代わりにローディングスピナーなどのアニメーションを $\text{CSS}$ で作成することが一般的です。

play_circle

デモ (静的表示)

HTML (Source)
<label for="file-upload">ファイルのアップロード中...</label> <progress id="file-upload" max="100" value="75"> 75% </progress> <p> <label for="unknown-progress">処理を実行中... (進捗不明)</label> <progress id="unknown-progress"> 処理中... </progress> </p>
Preview (Result)
75%

処理中...

list

属性 (Attributes)

属性名 説明
max タスクの完了に必要な総作業量を示す数値(浮動小数点数)です。デフォルト値は $\text{1.0}$ です。
value タスクの完了済み作業量を示す数値(浮動小数点数)です。この値は $\text{0}$ 以上、かつ $\text{max}$ 属性の値以下でなければなりません。
code

実用例

1. フォームの完了度を表示

<label for="form-complete">フォーム完了度 6/10</label> <progress id="form-complete" max="10" value="6"></progress>

2. 既知の進捗状況 (パーセンテージ)

<p>ファイルのダウンロード状況: 75%</p> <progress max="100" value="75">75%</progress>

3. 不確定な進捗状況(ローディング)

<!-- value属性を省略すると、ブラウザはアニメーションするプログレスバー(ローディング)として表示します --> <label for="indeterminate">通信待機中...</label> <progress id="indeterminate">通信中</progress>
lightbulb

知っておくべき重要事項

palette
スタイリングに関する注意
<progress> 要素の見た目を完全にカスタマイズするのは難しく、ブラウザごとに挙動が異なります。$\text{CSS}$ の $\text{-webkit-progress-*}$ や $\text{-moz-progress-*}$ のようなベンダープレフィックスが必要となるか、または $\text{CSS}$ の $\text{::after}$ 擬似要素などを使って代替表現を行う必要がある場合があります。
accessibility_new
アクセシビリティ
進捗バーには、関連する情報(例: $\text{75\%}$ 完了)をテキストとして隣接させるか、<label> 要素で関連付けることが強く推奨されます。特に不確定な進捗状況の場合は、スクリーンリーダーに内容を伝えるために子ノードにテキストを含めるべきです。
私について 利用規約 プライバシーポリシー