Communitygithub.com

Système d'États Interactifs

Concevoir et documenter le comportement visuel des éléments d'interface utilisateur lors des interactions (survol, focus, actif, désactivé, etc.) pour garantir la convivialité et l'accessibilité.

Qu'est-ce que Système d'États Interactifs ?

Cette compétence fournit un cadre complet pour définir comment les composants d'interface utilisateur réagissent aux entrées utilisateur (souris, clavier, tactile). Elle garantit que chaque élément interactif (boutons, liens, champs de saisie, cartes) dispose d'un retour visuel clair, cohérent et accessible dans tous les modes d'interaction. L'outillage inclut une matrice d'états, des directives de transition et des spécifications d'accessibilité conformes aux WCAG 2.2 (notamment les critères 2.4.11 pour les indicateurs de focus et 2.5.8 pour les cibles tactiles). Utile pour les concepteurs de systèmes de design, les développeurs d'interfaces et les auditeurs d'accessibilité, cette compétence élimine l'ambiguïté pour les développeurs et garantit une expérience utilisateur réactive et de haute qualité.

Compatible avec~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/coastdigitalgroup/coastai-skills/tree/HEAD/website-design/interactive-state-system

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait Système d'États Interactifs ?

Objectif

La compétence Système d'États Interactifs fournit un cadre pour définir comment les composants d'interface utilisateur répondent aux entrées utilisateur. Elle garantit que chaque élément interactif (boutons, liens, champs de saisie, cartes) dispose d'un retour visuel clair, cohérent et accessible dans tous les modes d'interaction (souris, clavier, tactile). Ce système élimine l'ambiguïté pour les développeurs et garantit une sensation réactive de haute qualité pour l'utilisateur final.

Cas d'Utilisation

  • Définir le comportement des composants pour un système de design ou une bibliothèque d'interface utilisateur.
  • Auditer un site existant pour détecter les interactions « mortes » ou non réactives.
  • Assurer la conformité WCAG 2.2 pour les indicateurs de focus, la taille des cibles et les affordances interactives.
  • Standardiser les motifs de retour (par exemple, toutes les actions destructrices se comportent de la même manière).

Quand NE PAS Utiliser

  • Contenu Statique : Éléments purement informatifs qui n'ont aucune interaction par clic, toucher ou clavier.
  • Conception d'Animation Expérimentale : Lorsque l'objectif est une animation complexe et non standard plutôt qu'un retour d'état fonctionnel.
  • Valeurs Par Défaut du Navigateur : Si le projet repose strictement sur des éléments natifs du navigateur non stylisés (bien que cela soit rare pour les conceptions de sites professionnels).

Entrées

  1. Inventaire des Composants : Liste de tous les éléments interactifs dans la conception.
  2. Système de Couleurs de la Marque : Échelles de couleurs primaires, secondaires et sémantiques existantes.
  3. Cible d'Accessibilité : (par exemple, Niveau AA WCAG) qui dicte les ratios de contraste pour les états.

Sorties

  1. Matrice d'États : Une carte complète montrant les états Par Défaut, Survol, Focus, Actif et Désactivé pour chaque composant.
  2. Directives d'Interaction : Règles pour les transitions, la temporisation (ms) et les fonctions d'assouplissement.
  3. Spécification d'Accessibilité : Définitions explicites pour les anneaux de focus et les indices visuels uniquement au clavier.

Flux de Travail

1. Identifier les Éléments Interactifs

Catégoriser les éléments par leur type d'interaction :

  • Actions : Boutons, liens, éléments de menu.
  • Saisies : Champs de texte, cases à cocher, boutons radio, listes déroulantes.
  • Conteneurs : Cartes cliquables, en-têtes d'accordéon, onglets.

2. Définir la Palette d'États

Déterminer comment les variables visuelles changent par état :

  • Survol (Souris) : Léger changement de couleur d'arrière-plan, de bordure ou d'élévation (ombre).
  • Focus (Clavier) : Un anneau ou contour à contraste élevé. Doit être distinct de l'état de survol.
  • Actif/Enfoncé : « Compression » visuelle (par exemple, léger assombrissement ou réduction d'échelle) pour indiquer un clic/toucher réussi.
  • Désactivé : Opacité réduite et suppression des indices interactifs (changement du curseur).
  • Visité (Liens) : Une couleur distincte pour les liens déjà navigués (essentiel pour les sites riches en contenu).

3. Établir la Logique de Focus

Concevoir un « Style de Focus Global » qui garantit que les utilisateurs du clavier savent toujours où ils se trouvent.

  • Règle : L'indicateur de focus doit avoir un ratio de contraste d'au moins 3:1 par rapport à l'arrière-plan ET par rapport à l'état non focalisé du composant.
  • Règle (WCAG 2.2 SC 2.4.11) : L'indicateur de focus ne doit jamais être complètement masqué par d'autres contenus (par exemple, un en-tête fixe recouvrant un élément focalisé lors du défilement). Au moins une partie de l'indicateur doit toujours rester visible.

4. Optimiser pour le Tactile (Mobile)

Étant donné que les états de survol n'existent pas sur les appareils tactiles :

  • Assurez-vous que les états actif fournissent un retour immédiat.
  • Vérifiez que les cibles tactiles respectent WCAG 2.2 SC 2.5.8 (minimum 24x24px), et préférez 44x44px lorsque la disposition le permet pour une portée confortable du pouce.
  • Supprimez les informations dépendantes du survol (utilisez des info-bulles sur appui ou des étiquettes persistantes).

5. Documenter les Transitions

Définir comment le changement se produit :

  • Durée : 150 ms à 250 ms est standard pour les changements d'état.
  • Assouplissement : ease-in-out ou cubic-bezier(0.4, 0, 0.2, 1).

Règles de Décision

  • Persistance de l'État : Les indicateurs de focus doivent rester visibles tant que l'élément a le focus.
  • Affordance Avant Tout : Les éléments interactifs doivent sembler « cliquables » dans leur état par défaut (par exemple, les boutons doivent avoir plus de poids visuel que les balises non cliquables).
  • Pas d'États Uniquement par Couleur : Ne pas se fier uniquement à la couleur pour indiquer un état (par exemple, un état d'erreur doit inclure une icône ou un changement d'épaisseur de bordure).
  • Retour Immédiat : Les réponses interactives doivent sembler instantanées (temps de démarrage <100 ms).

Contraintes

  • Accessibilité : Les indicateurs de focus ne peuvent pas être « masqués » via le CSS outline: none sans fournir une alternative robuste.
  • Réactivité : Les états doivent fonctionner sur les petits écrans sans dépendre du survol de la souris.
  • Performance : Évitez les ombres de boîte lourdes ou les filtres complexes sur les états qui se déclenchent fréquemment (comme le survol) pour éviter les secousses de mise en page.

Modèles d'Échec Courants

  • Le Focus « Invisible » : Suppression de l'anneau de focus par défaut du navigateur sans le remplacer, rendant le site inutilisable pour les utilisateurs de clavier.
  • Logique Uniquement au Survol : Placer des informations ou actions critiques dans un état de survol, les rendant inaccessibles sur mobile.
  • États Actifs Vagues : Boutons qui ne changent pas lorsqu'on clique dessus, incitant les utilisateurs à cliquer plusieurs fois.
  • États Désactivés Confusants : Éléments qui semblent désactivés mais sont en réalité cliquables, ou vice versa.

Critères de Validation

  • Chaque élément interactif a un état Survol, Focus et Actif défini.
  • Les indicateurs de Focus respectent l'exigence de contraste 3:1 et ne sont jamais complètement masqués par d'autres contenus (WCAG 2.2 SC 2.4.11).
  • Les cibles tactiles mesurent au moins 24x24px (WCAG 2.2 SC 2.5.8), 44x44px préféré.
  • Aucune information critique n'est cachée derrière une interaction uniquement au survol.
  • Les états désactivés sont visuellement distincts et ont pointer-events: none (ou logique équivalente).
  • Le système inclut une directive claire de transition/ animation pour les états.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for progressive disclosure using accordions, ensuring structural integrity, visual affordances, and accessibility across different content densities and devices.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for long-form content, managing readability, vertical rhythm, and information density to ensure a superior reading experience.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for informational elements that communicate state (Badges) and categorization (Tags) with clarity and accessibility.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for non-overlay notifications, managing global announcements and contextual inline alerts to communicate system states without interrupting the user's flow.

coastdigitalgroup/coastai-skills

Design and implement a systematic, asymmetrical bento-grid layout framework to organize diverse content types cohesively while maintaining strict visual hierarchy, logical focus order, and responsive flexibility.

coastdigitalgroup/coastai-skills

Design a responsive, mobile-first bottom navigation bar and persistent action dock system for mobile websites and web applications, establishing spatial anchors, tab bar anatomy, badge indicators, thumb-zone ergonomics, safe area inset handling, active/inactive state contrast, and desktop responsive adaptation rules.

coastdigitalgroup/coastai-skills

Design a mobile-first bottom sheet overlay system with configurable detents, drag affordances, safe area padding, responsive desktop modal/popover adaptation, and WCAG AA accessibility compliance.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for secondary navigation trails that provide orientation, context, and one-click access to parent levels in deep information architectures.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for buttons and interactive triggers, managing visual hierarchy, variant logic, and action grouping to ensure clear intent and accessible interaction.

coastdigitalgroup/coastai-skills

Design a systematic framework for date and time selection, managing calendar grids, range pickers, and scheduling interfaces to ensure precision and accessibility.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for modular content containers that maintain hierarchy, structural integrity, and action alignment across variable content and responsive viewports.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for horizontal discovery components, managing navigation affordances, scroll behavior, and accessibility to ensure effective content density without compromising usability.

coastdigitalgroup/coastai-skills

Design a systematic, highly accessible, and developer-friendly UI layout framework for code blocks, snippet showcases, multi-file code tabs, line-highlighting, diff views, and syntax token contrast in technical documentation and developer platforms.

coastdigitalgroup/coastai-skills

Design a systematic framework for global command menus (Cmd+K panels) that combines keyboard-driven navigation, command execution, and shortcut discovery into an accessible, responsive overlay.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for threaded conversations, managing nesting depths, action hierarchies, and community signaling to foster engagement and readability.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for side-by-side comparison interfaces, managing high attribute density and responsive complexity to support informed decision-making.

coastdigitalgroup/coastai-skills

Design and implement a systematic framework for user privacy, managing consent banners, preference centers, and persistent privacy controls to balance legal compliance with user trust.

coastdigitalgroup/coastai-skills

Design and implement a systematic, highly accessible, and responsive visual layout framework for conversational chat widgets, live chat boxes, and chatbot panels that ensures clear message scannability, native focus flow, and seamless mobile keyboard adaptation.

coastdigitalgroup/coastai-skills

Design a systematic, accessible, and high-conversion framework for custom select dropdowns and comboboxes, defining anatomy, states, search-filtering, and responsive mobile-adaptive patterns.

coastdigitalgroup/coastai-skills

Design and implement a systematic color palette that ensures WCAG 2.2 accessibility compliance. Trigger this skill when asked to define brand colors, create UI themes, or establish a visual system for a website.

Skills associés