Tooltip

Small contextual labels that appear on hover or focus. Uses the native HTML Popover API (popover="hint") and CSS Anchor Positioning for placement — no JavaScript required.

Browser support: CSS Anchor Positioning and popover="hint" are cutting-edge features. They are supported in Chrome 125+ and Edge 125+. Firefox and Safari have partial support — check caniuse for the latest status.

Usage

Helpful information
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tooltip-demo" popovertarget="tooltip-demo">Hover me</button>
<span popover="hint" id="tooltip-demo" class="zui-tooltip-content zui-tooltip-placement-top" style="position-anchor: --tooltip-demo" role="tooltip">Helpful information</span>
</span>
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tooltip-1" popovertarget="tooltip-1">Hover me</button>
<span popover="hint" id="tooltip-1" class="zui-tooltip-content zui-tooltip-placement-top" style="position-anchor: --tooltip-1" role="tooltip">Helpful information</span>
</span>

Placement

Tooltips default to top placement. Use placement classes to change direction.

Appears aboveAppears belowAppears leftAppears right
<!-- Top (default) -->
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-top" popovertarget="tt-top">Top</button>
<span popover="hint" id="tt-top" class="zui-tooltip-content zui-tooltip-placement-top" style="position-anchor: --tt-top" role="tooltip">Appears above</span>
</span>

<!-- Bottom -->
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-bottom" popovertarget="tt-bottom">Bottom</button>
<span popover="hint" id="tt-bottom" class="zui-tooltip-content zui-tooltip-placement-bottom" style="position-anchor: --tt-bottom" role="tooltip">Appears below</span>
</span>

<!-- Left -->
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-left" popovertarget="tt-left">Left</button>
<span popover="hint" id="tt-left" class="zui-tooltip-content zui-tooltip-placement-left" style="position-anchor: --tt-left" role="tooltip">Appears left</span>
</span>

<!-- Right -->
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-right" popovertarget="tt-right">Right</button>
<span popover="hint" id="tt-right" class="zui-tooltip-content zui-tooltip-placement-right" style="position-anchor: --tt-right" role="tooltip">Appears right</span>
</span>
<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-1" popovertarget="tt-1">Top</button>
<span popover="hint" id="tt-1" class="zui-tooltip-content zui-tooltip-placement-top" style="position-anchor: --tt-1">Appears above</span>
</span>

<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-2" popovertarget="tt-2">Bottom</button>
<span popover="hint" id="tt-2" class="zui-tooltip-content zui-tooltip-placement-bottom" style="position-anchor: --tt-2">Appears below</span>
</span>

<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-3" popovertarget="tt-3">Left</button>
<span popover="hint" id="tt-3" class="zui-tooltip-content zui-tooltip-placement-left" style="position-anchor: --tt-3">Appears left</span>
</span>

<span class="zui-tooltip">
<button class="zui-button" style="anchor-name: --tt-4" popovertarget="tt-4">Right</button>
<span popover="hint" id="tt-4" class="zui-tooltip-content zui-tooltip-placement-right" style="position-anchor: --tt-4">Appears right</span>
</span>

Theme

Copy this CSS to your project's theme.css file: