視覚を持つユーザーがリンクの背後にあるコンテンツをプレビューするため。
import React from 'react';import * as HoverCard from '@radix-ui/react-hover-card';import './styles.css';const HoverCardDemo = () => (<HoverCard.Root><HoverCard.Trigger asChild><a className="ImageTrigger" href="https://twitter.com/radix_ui" target="_blank" rel="noreferrer noopener" ><img className="Image normal" src="https://pbs.twimg.com/profile_images/1337055608613253126/r_eiMp2H_400x400.png" alt="Radix UI" /></a></HoverCard.Trigger><HoverCard.Portal><HoverCard.Content className="HoverCardContent" sideOffset={5}><div style={{ display: 'flex', flexDirection: 'column', gap: 7 }}><img className="Image large" src="https://pbs.twimg.com/profile_images/1337055608613253126/r_eiMp2H_400x400.png" alt="Radix UI" /><div style={{ display: 'flex', flexDirection: 'column', gap: 15 }}><div><div className="Text bold">Radix</div><div className="Text faded">@radix_ui</div></div><div className="Text">Components, icons, colors, and templates for building high-quality, accessible UI.Free and open-source.</div><div style={{ display: 'flex', gap: 15 }}><div style={{ display: 'flex', gap: 5 }}><div className="Text bold">0</div> <div className="Text faded">Following</div></div><div style={{ display: 'flex', gap: 5 }}><div className="Text bold">2,900</div> <div className="Text faded">Followers</div></div></div></div></div><HoverCard.Arrow className="HoverCardArrow" /></HoverCard.Content></HoverCard.Portal></HoverCard.Root>);export default HoverCardDemo;
制御可能または非制御可能。
サイド、アラインメント、オフセット、衝突処理をカスタマイズできます。
オプションで指し示す矢印を表示できます。
カスタムの開閉遅延をサポートします。
スクリーンリーダーによって無視されます。
コマンドラインからコンポーネントをインストールします。
すべての部品をインポートして組み合わせてください。
ホバーカードのすべての部品を含みます。
ホバーするとホバーカードが開くリンク。
使用する場合、コンテンツ部分をbody
にポータルします。
ホバーカードが開いているときに表示されるコンポーネント。
ホバーカードとともにレンダリングするためのオプションの矢印要素です。これは、トリガーとHoverCard.Content
の視覚的な関連付けを支援するために使用できます。HoverCard.Content
内側にレンダリングする必要があります。
openDelay
プロップを使用して、ホバーカードが開くまでの時間を制御します。
トリガーの幅に合わせてコンテンツの幅を制限したい場合があります。また、ビューポートを超えないように高さを制限したい場合もあります。
これをサポートするために、--radix-hover-card-trigger-width
や--radix-hover-card-content-available-height
などのいくつかのCSSカスタムプロパティを公開しています。これらを使用して、コンテンツのサイズを制限します。
CSSカスタムプロパティ--radix-hover-card-content-transform-origin
を公開しています。side
、sideOffset
、align
、alignOffset
、および衝突に基づいて、計算された起点からコンテンツをアニメーション化するために使用します。
data-side
属性とdata-align
属性を公開しています。これらの値は、実行時に衝突を反映するように変更されます。これらを使用して、衝突と方向を認識するアニメーションを作成します。
ホバーカードは視覚障害のないユーザーのみを対象としています。キーボードユーザーにはコンテンツにアクセスできません。