メインコンテンツへスキップ

Popover ポップオーバーカード

Tooltip と似ていますが、タイトルとより豊かな内容(HTML 構造、リストなど)を担えます。クリックまたはホバーでトリガーします。

基本的な使い方​

方位、トリガー方式と矢印
import { LhButton, LhPopover } from '@lh-ui/react'

export default function Demo() {
return (
<LhPopover title="タイトル" content="これはポップオーバーカードの内容です。" placement="top">
<LhButton>上方</LhButton>
</LhPopover>
)
}

Popover Props​

プロパティ説明型使用可能な値デフォルト値
childrenトリガーノードReactNode——
titleタイトル(__title 領域に描画)ReactNode——
content内容(__content 領域に描画)ReactNode——
placement表示位置LhPopoverPlacementtop / bottom / left / right(-start / -end を含む)'top'
triggerトリガー方式LhPopoverTrigger'hover' | 'click' | 'focus' | 'manual''click'
disabledポップオーバーを無効化boolean—false
arrow矢印を表示するかどうかboolean—true
widthポップアップの幅string | number——
visible制御された表示状態boolean——
defaultVisible非制御のデフォルト表示boolean—false
showAfter表示の遅延(ms。デフォルト 200 で誤操作を防止)number—200
hideAfter非表示の遅延(ms。デフォルト 100 はポインタがポップアップに移動するための猶予)number—100
popperClassポップアップのカスタムクラス名string——
themeVarsコンポーネントレベルのテーマ変数Record<string, string>——
bgPatternコンポーネントレベルの背景紋様string——
sxクイックレイアウトプロパティ(トリガーに作用)SxProps——

Popover イベント​

イベント説明コールバックシグネチャVue 対応
onVisibleChange表示状態の変化(制御・非制御どちらでも発火)(visible: boolean) => voidupdate:visible

ref​

forwardRef<HTMLDivElement> —— トリガーのルート要素です。LhPopoverInstance は show() / hide() / toggle() / isVisible を公開します。

フォーカストラップ

trigger="click" の時、ポップアップレイヤーはダイアログのセマンティクスでフォーカスをトラップし(Tab が内部で循環)、閉じる時に返還します。 hover / focus トリガーはフォーカスを奪わず、plus の isModal の挙動と一致します。

アクセシビリティ

ポップアップレイヤーは role="dialog" です。タイトルが存在する場合は aria-labelledby で関連付け、トリガーは aria-describedby でポップアップレイヤーを関連付けます。

スタイル​

import '@lh-ui/react/style/popover'