Dialog

メインコンテンツの上に重ねて表示するモーダルウィンドウ。フォーム・詳細表示・設定変更など、ページ遷移せずにサブタスクを完結させるときに使う。

インストール

npx shoji add dialog

プレビュー

パターン

Form Dialog

フォームを内包するダイアログの完成形。新規作成・編集フォームをページ遷移なしに表示するSaaSの定番パターン。

dialog
formcreateedit

Detail Dialog

一覧から詳細を表示するダイアログ。タブ切り替えを内包することもある。クリックして詳細確認のパターン。

dialog
detailpreview

使い方

こんなときに使う

  • ページ遷移せずにフォームを表示したいとき(新規作成・編集)
  • 画像・動画のフルスクリーンプレビュー
  • 設定変更・確認ステップなど一時的なサブタスク

使わないほうがいい場面

  • ページ全体を置き換えるような大量のコンテンツ(ページ遷移を使う)
  • モバイルで多用する(Drawer のほうがモバイルに適している)
  • 連鎖してダイアログの上にダイアログを開く

JP 最適化のポイント

  • フォーカストラップを実装Tab キーがダイアログ内を循環し、背後のコンテンツに誤ってフォーカスが移らない
  • Esc キーで閉じられるように実装スクリーンリーダーユーザーや日本語入力中のユーザーも安全に操作できる