Tooltip
Provides additional information or context when users hover over or interact with an element.
Structure
API Reference
The root component containing the parts of the tooltip.
Property | Type | Description |
---|---|---|
open bindable prop | boolean | The open state of the tooltip component. Default: false |
onOpenChange | function | A callback that fires when the open state changes. Default: undefined |
disabled | boolean | Whether or not the tooltip is disabled. Default: false |
delayDuration | number | The amount of time in milliseconds to delay opening the tooltip when hovering over the trigger. Default: 700 |
disableHoverableContent | boolean | Whether or not to disable the hoverable content. This is useful when the content contains interactive elements. Default: false |
disableCloseOnTriggerClick | boolean | Whether or not to close the tooltip when pressing the escape key. This is useful when the content contains interactive elements. Default: false |
ignoreNonKeyboardFocus | boolean | Whether or not to ignore the tooltip when the focus is not on the trigger. This is useful when the content contains interactive elements. Default: false |
children | Snippet | The children content to render. Default: undefined |
A component which triggers the opening and closing of the tooltip on hover or focus.
Property | Type | Description |
---|---|---|
disabled | boolean | Whether or not the tooltip trigger is disabled. Default: false |
ref bindable prop | HTMLButtonElement | The underlying DOM element being rendered. You can bind to this to get a reference to the element. Default: undefined |
children | Snippet | The children content to render. Default: undefined |
child | Snippet | Use render delegation to render your own element. See delegation docs for more information. Default: undefined |
Data Attribute | Value | Description |
---|---|---|
data-state | enum | The open state of the tooltip. |
data-tooltip-trigger | —— | Present on the trigger element. |
The contents of the tooltip which are displayed when the tooltip is open.
Property | Type | Description |
---|---|---|
side | enum | The preferred side of the anchor to render the floating element against when open. Will be reversed when collisions occur. Default: bottom |
sideOffset | number | The distance in pixels from the anchor to the floating element. Default: 0 |
align | enum | The preferred alignment of the anchor to render the floating element against when open. This may change when collisions occur. Default: start |
alignOffset | number | The distance in pixels from the anchor to the floating element. Default: 0 |
arrowPadding | number | The amount in pixels of virtual padding around the viewport edges to check for overflow which will cause a collision. Default: 0 |
avoidCollisions | boolean | When Default: true |
collisionBoundary | union | A boundary element or array of elements to check for collisions against. Default: undefined |
collisionPadding | union | The amount in pixels of virtual padding around the viewport edges to check for overflow which will cause a collision. Default: 0 |
sticky | enum | The sticky behavior on the align axis. Default: partial |
hideWhenDetached | boolean | When Default: true |
updatePositionStrategy | enum | The strategy to use when updating the position of the content. When Default: optimized |
strategy | enum | The positioning strategy to use for the floating element. When Default: fixed |
preventScroll | boolean | When Default: true |
onInteractOutside | function | Callback fired when an outside interaction event completes, which is either a Default: undefined |
onInteractOutsideStart | function | Callback fired when an outside interaction event starts, which is either a Default: undefined |
onFocusOutside | function | Callback fired when focus leaves the dismissable layer. You can call Default: undefined |
interactOutsideBehavior | enum | The behavior to use when an interaction occurs outside of the floating content. Default: close |
onEscapeKeydown | function | Callback fired when an escape keydown event occurs in the floating content. You can call Default: undefined |
escapeKeydownBehavior | enum | The behavior to use when an escape keydown event occurs in the floating content. Default: close |
forceMount | boolean | Whether or not to forcefully mount the content. This is useful if you want to use Svelte transitions or another animation library for the content. Default: false |
dir | enum | The reading direction of the app. Default: ltr |
ref bindable prop | HTMLDivElement | The underlying DOM element being rendered. You can bind to this to get a reference to the element. Default: undefined |
children | Snippet | The children content to render. Default: undefined |
child | Snippet | Use render delegation to render your own element. See delegation docs for more information. Default: undefined |
Data Attribute | Value | Description |
---|---|---|
data-tooltip-content | —— | Present on the content element. |
An optional arrow element which points to the trigger when the tooltip is open.
Property | Type | Description |
---|---|---|
width | number | The width of the arrow in pixels. Default: 8 |
height | number | The height of the arrow in pixels. Default: 8 |
ref bindable prop | HTMLDivElement | The underlying DOM element being rendered. You can bind to this to get a reference to the element. Default: undefined |
children | Snippet | The children content to render. Default: undefined |
child | Snippet | Use render delegation to render your own element. See delegation docs for more information. Default: undefined |
Data Attribute | Value | Description |
---|---|---|
data-arrow | —— | Present on the arrow element. |
data-tooltip-arrow | —— | Present on the arrow element. |