Skip to content

Toggle

Candidate

Toggle active ou desactive immediatement un parametre clairement reversible. Pour une confirmation soumise avec un formulaire, utiliser Checkbox.

StateRole
OffParametre disponible et inactif
OnParametre actif
HoverRenforce le track disponible
FocusRend la navigation clavier visible
DisabledParametre visible mais non modifiable

La V1 propose une taille unique, adaptee aux reglages de portail et aux formulaires marketing. Les dimensions du track et du thumb restent a confirmer dans Figma.

---
import Toggle from '../components/ui/Toggle.astro';
---
<Toggle
label="Synchronisation active"
name="sync-enabled"
description="Envoie les nouvelles audiences aux destinations connectees."
checked
/>
<label class="pixel-toggle">
<input type="checkbox" role="switch" name="sync-enabled" checked />
<span class="pixel-toggle__control" aria-hidden="true">
<span class="pixel-toggle__thumb"></span>
</span>
<span class="pixel-toggle__label">Synchronisation active</span>
</label>

--toggle-track-*, --toggle-thumb, --toggle-thumb-disabled, --toggle-focus-ring, --toggle-label, --toggle-description, --toggle-width, --toggle-height, --toggle-thumb-size, --toggle-gap, --toggle-disabled-opacity, --motion-duration-base, --motion-easing-standard.

DoDon’t
Utiliser un libelle qui reste clair dans les deux etats.Remplacer le libelle par seulement On ou Off.
Appliquer le changement immediatement ou afficher sa progression.Exiger ensuite un bouton Enregistrer sans l’annoncer.
Utiliser Checkbox pour un consentement explicite.Utiliser Toggle pour accepter des conditions legales.
Garder l’action reversible.Utiliser Toggle pour une suppression definitive.

Toggle utilise un checkbox natif avec role="switch". Il fonctionne avec Space, expose son etat aux technologies d’assistance et conserve un focus visible. Le libelle doit decrire le parametre, pas l’etat courant.