Hover Card
fandhe-frontend-pre-styled-ui の hover_card mod が提供するスタイル済み Hover Card 部品です。 リンク先プレビュー等を目的に hover / focus で開閉するオーバーレイで、trigger は a 要素として組み立てられます。WAI-ARIA に hover card 専用パターンは存在しない ため aria-expanded/aria-controls/aria-haspopup は付与しません。開閉遅延 (既定 600ms/300ms)は data-open-delay/data-close-delay として決定的に 出力される SSR 設定値で、実タイマー駆動は wasm-full 側の責務です。
Demo はトリガー起点のオーバーレイ部品を「開いた状態」で固定掲示しています。 本来の配置(画面全体を覆う・トリガー直下に重なる)ではページ内の他セクションと 重なるため、掲示専用 CSS(assets/pre-styled-ui.css の .pre-styled-showcase スコープ)でページの流れの中へ収めています。実アプリケーションでの overlay 配置は pre-styled-ui の recipe CSS がそのまま担います。
関連 API: fandhe-frontend-pre-styled-ui API / fandhe-frontend-headless-ui API
Demo
headless-ui の HoverCard(リンク先プレビュー等 hover/focus で開閉するオーバーレイ)に pre-styled-ui の recipe CSS を適用した静的掲示です。positioner はフロー内配置へ中和しています。
Features
- リンク先プレビュー等、hover / focus で開閉するオーバーレイ。Root / Trigger / Positioner / Content / Arrow / ArrowTip の 6 anatomy パーツを持つ。
- trigger はリンク先プレビュー用途の a 要素であり、javascript: 等の危険スキームは fandhe-frontend-core の URL スキーム検証が除去する。
- HoverCardDelays(既定 open_ms: 600 / close_ms: 300)を data-open-delay / data-close-delay として root へ出力する。実際の hover/focus タイマー駆動は wasm-full 側の後続スコープ。
- WAI-ARIA に hover card 専用パターンは存在しないため、trigger へ aria-expanded / aria-controls / aria-haspopup は付与しない。
Anatomy
root
trigger
positioner
contentAPI Reference
Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| state | OpenState | 開閉状態(Open/Closed)。 | |
| delays | HoverCardDelays | HoverCardDelays::default()(open_ms: 600, close_ms: 300) | hover/focus の開閉遅延(ms)。data-open-delay / data-close-delay として出力される決定的な SSR 設定値。 |
Data Attributes
| Part | Attribute | Observed Values |
|---|---|---|
| content | data-state | open |
| positioner | data-state | open |
| root | data-close-delay | 300 |
| root | data-open-delay | 600 |
| root | data-state | open |
| trigger | data-state | open |
Accessibility
WAI-ARIA
| Attribute | Description |
|---|---|
| aria-hidden="true" | positioner に付与。閉じている間、支援技術から内容を隠す。 |