Tooltip
Used to provide context or hints for elements.
tooltip-demo.tsx
import { Icons } from "@/components/icons"
import { buttonVariants } from "@/components/ui/button"
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from "@/components/ui/tooltip"
export function TooltipDemo() {
return (
<Tooltip>
<TooltipTrigger
className={buttonVariants({ variant: "outline", size: "icon" })}
>
<Icons.twitter />
</TooltipTrigger>
<TooltipContent>
<span>
Follow me{" "}
<a
className="font-medium"
href="https://x.com/borabalogluu"
target="_blank"
>
@borabalogluu
</a>
</span>
</TooltipContent>
</Tooltip>
)
}
Installation
npx shadcn@latest add https://9ui.dev/r/tooltip
Usage
Imports
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from "@/components/ui/tooltip"
Anatomy
<Tooltip>
<TooltipTrigger />
<TooltipContent />
</Tooltip>
Examples
Custom Position
tooltip-custom-position.tsx
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from "@/components/ui/tooltip"
const positions = ["top", "right", "bottom", "left"] as const
export function TooltipCustomPosition() {
return (
<div className="grid grid-cols-2 gap-2">
{positions.map((position) => (
<Tooltip key={position}>
<TooltipTrigger className="w-full rounded-md border px-2 py-1.5 text-sm">
{position}
</TooltipTrigger>
<TooltipContent className="max-w-56" side={position}>
<span>This tooltip is positioned at the {position} side.</span>
</TooltipContent>
</Tooltip>
))}
</div>
)
}