Tooltip v0.1.0 Overlay

Hover/focus tooltip with hover-intent delays driven by a four-state core machine (no flicker on quick re-entry).

import { Tooltip } from "latticeui-react";

Examples

Hover intent and placement

Show code
<Tooltip.Root>
  <Tooltip.Trigger>Hover me (600ms intent)</Tooltip.Trigger>
  <Tooltip.Content>Driven by a four-state core machine</Tooltip.Content>
</Tooltip.Root>

<Tooltip.Root openDelay={0} placement="bottom">
  <Tooltip.Trigger>Instant tooltip</Tooltip.Trigger>
  <Tooltip.Content>openDelay={0}</Tooltip.Content>
</Tooltip.Root>

Anatomy

These data-part attributes are a versioned public API - style and test against them; they will not change in a minor release.

PartElementStable selector
triggerbutton[data-scope="tooltip"][data-part="trigger"]
positionerdiv[data-scope="tooltip"][data-part="positioner"]
contentdiv[role=tooltip][data-scope="tooltip"][data-part="content"]
arrowdiv[data-scope="tooltip"][data-part="arrow"]

Props

PropTypeDefaultDescription
Root.openDelaynumber600
Root.closeDelaynumber200
Root.placementPlacement (floating-ui)"top"

Accessibility

Roles: tooltip

KeyAction
Focusopens immediately (no delay)
Escapecloses

Styling

Override styles by targeting the stable selectors below from any unlayered CSS - it always beats the library's @layer latticeui styles, no !important needed.

[data-scope="tooltip"][data-part="content"] {
  /* your overrides */
}

State attributes: data-state=open