Popover

Popoverは、要素の周りにフローティングして情報を表示するコンポーネントです。

使い方

import { Popover } from "@yamada-ui/react"
<Popover.Root>
  <Popover.Anchor />
  <Popover.Trigger />
  <Popover.Content>
    <Popover.Header />
    <Popover.Body />
    <Popover.Footer />
  </Popover.Content>
</Popover.Root>

サイズを変更する

別の要素を参照して表示する

別の要素を参照して表示する場合は、Popover.Anchorを使用します。

Here Display Popover

アニメーションを変更する

アニメーションを変更する場合は、animationScheme"block-start""inline-end"などを設定します。 デフォルトでは"scale"が設定されています。

配置を変更する

配置を変更する場合は、placement"start""end-end"などを指定します。デフォルトでは"end"が設定されています。

所要時間を変更する

所要時間を変更する場合は、durationに数値(秒)を指定します。

オフセットを変更する

オフセットを変更する場合は、gutterまたはoffsetに値を設定します。

モーダルにする

モーダルにする場合は、modaltrueに設定します。スクロールブロックとフォーカストラップが有効になります。

無効にする

無効にする場合は、disabledtrueに設定します。

外側のクリック時に閉じない

外側のクリック時に閉じない場合は、closeOnBlurfalseに設定します。

ESCキーが入力された時に閉じない

ESCキーが入力された時に閉じない場合は、closeOnEscfalseに設定します。

自動フォーカスを無効にする

自動フォーカスを無効にする場合は、autoFocusfalseに設定します。

初回のフォーカスを設定する

初回のフォーカスを設定する場合は、initialFocusRefRefを渡します。

スクロールをブロックする

スクロールをブロックする場合は、blockScrollOnMounttrueに設定します。

スクロール時に閉じる

スクロール時に閉じる場合は、closeOnScrolltrueに設定します。

ネストさせる

制御する

Props

アクセシビリティ

Popoverは、アクセシビリティに関してWAI-ARIA Dialog (Modal) Patternに従います。

キーボード操作

ポップオーバーが開くと、フォーカスはポップオーバー内にロックされます。つまり、ポップオーバーを閉じない限り、ポップオーバー外の要素をフォーカスすることはできません。

キー説明状態
Tabポップオーバー内の無効ではない次の要素にフォーカスします。 最後の要素の場合はポップオーバーを閉じます。open={true}
Shift + Tabポップオーバー内の無効ではない前の要素にフォーカスします。最初の要素の場合はポップオーバーを閉じます。open={true}
Escapeポップオーバーを閉じます。open={true} + closeOnEsc={true}

ARIAロールと属性

コンポーネントロールと属性使い方
Popover.Contentrole="dialog"ダイアログであることを示します。
aria-labelledby関連したPopover.Headeridを設定します。
aria-describedby関連したPopover.Bodyidを設定します。
aria-hiddenポップオーバーが開いている場合は"false"を設定し、閉じている場合は"true"を設定します。
aria-modalmodal={true}の場合は"true"を設定します。
Popover.Triggerrole="button"ボタンであることを示します。
aria-expandedポップオーバーが開いている場合は"true"を設定し、閉じている場合は"false"を設定します。
aria-controlsポップオーバーが開いている場合は関連したPopover.Contentidを設定し、閉じている場合はundefinedを設定します。
aria-haspopup="dialog"ダイアログをトリガーすることを示します。
Popover.HeaderidPopover.Contentと関連付けるために使用するid
Popover.BodyidPopover.Contentと関連付けるために使用するid
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd
2nd