Loading

読み込み中の処理を、文言とインジケーターで示します。

次の記事を読み込んでいます…

プロジェクトに添付されたすべてのファイルと画像を確認しています。もう少しお待ちください。

資料一覧を準備しています。表示できるまで、この領域でお待ちください。

操作の待ち時間は、その操作のそばに表示します。
三つの動き(順に跳ねる三つの点・回る丸・広がる輪)

順に跳ねる三つの点(既定):返信を読み込んでいます…

回る丸:次のページを読み込んでいます…

広がる輪:確認しています…

この領域で待つ

コメントを読み込んでいます…

記事の一覧を読み込んでいます…

狭い場所で折り返す

秋の読書会の資料と参加者名簿を読み込んでいます…

https://example.com/articles/autumn-reading-club-2026 を確認しています…

右から左に読む場合

جارٍ تحميل الصفحة التالية…

جارٍ كتابة الرد…

جارٍ التحقق…

使いどころ

  • 次の記事やコメントの取得など、短い待ちを何を待っているかの言葉と一緒に示す時に使います。
  • 送信などボタンを押した後の待ちは、そのボタンの busy を使います。
  • 作業量が分かる処理や、終わりの分からない長い処理は Progress を使います。架空の進み具合を付けません。
  • 読み込んだ結果が0件だった時は EmptyState を使います。

使い方

label に待っている処理を書きます。文とインジケーターは灰色で、文字は12pxです。インジケーターは variant で選び、どれも動かない形です。wave(既定)は三つの灰色の点を、先頭側から濃・中・淡の順に並べます。orbit は淡い輪の上の一部だけを濃くした丸、halo は灰色の細い輪と、その中の小さな点です。

layout="inline" は文の横に置く、文字と同じ大きさのインジケーターです。領域全体で待つ時は layout="region" にすると、面を敷かずに大きめ(28px)のインジケーターと文を中央に縦に並べます。

読み込みを終えたら、Loadingを結果に置き換えます。JavaScriptは使いません。

アクセシビリティ

  • role="status" を持つので、label の文を読み上げます。インジケーターは読み上げから外します。
  • インジケーターは動かないので、動きを減らす設定でも見た目は変わりません。

API

Loading

Loadingのprops
名前型既定値説明
labelstring"読み込み中…"待っている処理を表す文。インジケーターの隣に書き、role="status"で読み上げる。
variant"orbit" | "wave" | "halo""wave"waveは濃・中・淡の灰色の三つの点(既定)、orbitは淡い輪の上の一部だけを濃くした丸、haloは灰色の細い輪と中の小さな点。どれも動かない。
layout"inline" | "region""inline"inlineは文の横に置く、文字と同じ大きさのインジケーター。regionは待っている領域の中央に、大きめのインジケーターと文を縦に並べる。

ほかに、<p>へ標準のHTML属性を渡せます。

読み込むCSS:layers.css、reset.css、tokens.css、base.css、layout.css、components/loading.css

コード

HTML
Hono JSX