Skip to content

Tooltip ​

Infobulle : courte description d'un élément, affichée au survol et au focus clavier. Elle est reliée au déclencheur par aria-describedby, on peut la survoler et Échap la ferme.

Une infobulle ne contient que du texte. Pour du contenu interactif (liens, boutons, formulaire), utilisez Popover.

Exemples d'utilisation ​

Utilisation de base ​

Le déclencheur est le premier élément du slot ; il doit être focusable (bouton, lien, champ).

vue
<script setup>
import { ClipboardDocumentIcon } from '@heroicons/vue/24/outline'
</script>

<template>
  <SuTooltip content="Copier le lien">
    <SuButton variant="outline" :icon="ClipboardDocumentIcon" icon-display="only" aria-label="Copier" />
  </SuTooltip>
</template>

Placements et flèche ​

Le placement est retourné automatiquement s'il manque de place.

vue
<SuTooltip content="En bas" placement="bottom" show-arrow>
  <SuButton variant="outline">bottom</SuButton>
</SuTooltip>

Contenu par slot et délais ​

vue
<SuTooltip :open-delay="0">
  <SuButton variant="outline">Sans délai</SuButton>
  <template #content>Enregistrer <kbd>Ctrl S</kbd></template>
</SuTooltip>

API ​

Props ​

PropTypeDéfautDescription
contentstring-Texte de l'infobulle (ou slot content)
placementPopoverPlacement'top'top, bottom, left, right, avec -start / -end
openDelaynumber300Délai avant l'ouverture au survol (ms) ; immédiate au focus clavier
closeDelaynumber100Délai avant la fermeture (ms), le temps d'amener le pointeur sur l'infobulle
showArrowbooleanfalseAffiche une flèche
disabledbooleanfalseDésactive l'infobulle
modelValuebooleanfalseOuverture contrôlée (v-model, facultatif)

Événements ​

ÉvénementPayloadDescription
update:modelValuebooleanOuverture ou fermeture

Slots ​

SlotDescription
defaultDéclencheur (élément focusable)
contentContenu de l'infobulle (texte, sans élément interactif)

Méthodes exposées ​

MéthodeDescription
open() / close()Ouvre ou ferme l'infobulle

Accessibilité ​

  • role="tooltip", relié au déclencheur par aria-describedby (les ids déjà présents sont conservés). La description est lue même quand l'infobulle est masquée.
  • Ouverture au survol (après openDelay) et au focus clavier (:focus-visible), pas au clic ni au toucher : sur mobile, prévoyez un libellé visible.
  • WCAG 1.4.13 : l'infobulle reste ouverte quand on y amène le pointeur et tant que le focus est sur le déclencheur ; Échap la ferme.
  • Un bouton icône garde son propre aria-label : l'infobulle le complète, elle ne le remplace pas.

Publié sous licence MIT.