Tooltip
Use tooltips to provide additional context or help text for form fields and interface elements. Built with Radix UI Tooltip for full accessibility.
Default Tooltip
Tooltips appear on hover and focus. Click the help icon below to see the tooltip.
National Insurance number
import * as Tooltip from '@radix-ui/react-tooltip';
import { HelpCircle } from 'lucide-react';
<Tooltip.Provider delayDuration={200}>
<Tooltip.Root>
<Tooltip.Trigger asChild>
<button className="radix-tooltip-trigger" aria-label="Help">
<HelpCircle size={18} />
</button>
</Tooltip.Trigger>
<Tooltip.Portal>
<Tooltip.Content className="radix-tooltip-content" sideOffset={5}>
Tooltip content here...
<Tooltip.Arrow className="radix-tooltip-arrow" />
</Tooltip.Content>
</Tooltip.Portal>
</Tooltip.Root>
</Tooltip.Provider>Tooltip with Form Label
<label className="form-label" style={{ display: 'flex', alignItems: 'center', gap: 'var(--space-2)' }}>
National Insurance number
<Tooltip.Root>
<Tooltip.Trigger asChild>
<button className="radix-tooltip-trigger" aria-label="Help">
<HelpCircle size={18} />
</button>
</Tooltip.Trigger>
<Tooltip.Portal>
<Tooltip.Content className="radix-tooltip-content" sideOffset={5}>
Help text...
<Tooltip.Arrow className="radix-tooltip-arrow" />
</Tooltip.Content>
</Tooltip.Portal>
</Tooltip.Root>
</label>Tooltip Positioning
Use the side prop to control tooltip placement.
<Tooltip.Content side="top" sideOffset={5}>...</Tooltip.Content>
<Tooltip.Content side="right" sideOffset={5}>...</Tooltip.Content>
<Tooltip.Content side="bottom" sideOffset={5}>...</Tooltip.Content>
<Tooltip.Content side="left" sideOffset={5}>...</Tooltip.Content>Usage Guidelines
Do
- Use for supplementary information that helps users
- Keep tooltip text concise (1-2 sentences)
- Use the help icon consistently for tooltips
- Set an appropriate delay before showing (200-300ms)
Don't
- Don't hide essential information in tooltips
- Don't use tooltips for form validation errors
- Don't make tooltips the only way to access help
- Don't use tooltips on touch-only devices without alternatives
Accessibility
- Built with Radix UI Tooltip for full WAI-ARIA compliance
- Tooltips are triggered by both hover and keyboard focus
- Automatic focus management and screen reader announcements
- Collision detection prevents tooltips from going off-screen
- Consider using visible hint text for critical information
CSS Classes
/* Radix Tooltip */
.radix-tooltip-trigger { }
.radix-tooltip-content { }
.radix-tooltip-arrow { }Installation
npm install @radix-ui/react-tooltip lucide-react