Overlays
Tooltip
Display content that appears on hover next to an element.
Usage
<template>
<UTooltip text="Tooltip example" :shortcuts="['⌘', 'O']">
<UButton color="gray" label="Hover me" />
</UTooltip>
</template>
Popper
Use the popper
prop to customize the popper instance.
Arrow
<template>
<UTooltip text="Tooltip example" :shortcuts="['⌘', 'O']" :popper="{ arrow: true }">
<UButton color="gray" label="Hover me" />
</UTooltip>
</template>
Placement
<template>
<UTooltip text="Tooltip example" :shortcuts="['⌘', 'O']" :popper="{ placement: 'right' }">
<UButton color="gray" label="Hover me" />
</UTooltip>
</template>
Offset
<template>
<UTooltip text="Tooltip example" :shortcuts="['⌘', 'O']" :popper="{ offsetDistance: 16 }">
<UButton color="gray" label="Hover me" />
</UTooltip>
</template>
Slots
text
Use the #text
slot to override the content of the text.
Hover
<UTooltip>
<template #text>
<span class="italic">Hello World!</span>
</template>
</UTooltip>
Props
ui
any
undefined
text
string
null
popper
{}
{}
openDelay
number
0
closeDelay
number
0
shortcuts
string[]
[]
prevent
boolean
false
Config
UTooltip.vue
{
"wrapper": "relative inline-flex",
"container": "z-20 group",
"width": "max-w-xs",
"background": "bg-white dark:bg-gray-900",
"color": "text-gray-900 dark:text-white",
"shadow": "shadow",
"rounded": "rounded",
"ring": "ring-1 ring-gray-200 dark:ring-gray-800",
"base": "[@media(pointer:coarse)]:hidden h-6 px-2 py-1 text-xs font-normal truncate relative",
"shortcuts": "hidden md:inline-flex flex-shrink-0 gap-0.5",
"transition": {
"enterActiveClass": "transition ease-out duration-200",
"enterFromClass": "opacity-0 translate-y-1",
"enterToClass": "opacity-100 translate-y-0",
"leaveActiveClass": "transition ease-in duration-150",
"leaveFromClass": "opacity-100 translate-y-0",
"leaveToClass": "opacity-0 translate-y-1"
},
"popper": {
"strategy": "fixed"
},
"arrow": {
"base": "before:w-2 before:h-2",
"ring": "before:ring-1 before:ring-gray-200 dark:before:ring-gray-800",
"rounded": "before:rounded-sm",
"background": "before:bg-gray-200 dark:before:bg-gray-800",
"shadow": "before:shadow",
"placement": "group-data-[popper-placement*=\"right\"]:-left-1 group-data-[popper-placement*=\"left\"]:-right-1 group-data-[popper-placement*=\"top\"]:-bottom-1 group-data-[popper-placement*=\"bottom\"]:-top-1"
}
}