Communitygithub.com

Système de Carrousel et Curseur

Concevoir et implémenter un cadre systématique pour les composants de découverte horizontale, en gérant les affordances de navigation, le comportement de défilement et l'accessibilité pour garantir une densité de contenu efficace sans compromettre l'utilisabilité.

Qu'est-ce que Système de Carrousel et Curseur ?

Ce système fournit une méthodologie complète pour concevoir des conteneurs de défilement horizontaux (carrousels et curseurs) qui permettent aux utilisateurs de parcourir des collections de contenu connexe sans consommer un espace vertical excessif. Il s'attaque aux problèmes courants des carrousels tels que le faible engagement, en mettant l'accent sur les affordances visuelles, la performance perçue et le contrôle utilisateur. Le système couvre des cas d'utilisation variés comme la découverte de produits, les témoignages clients, les galeries multimédias et les tableaux de bord. Il est conçu pour des plateformes web, avec des règles de décision claires sur quand et comment utiliser les carrousels, y compris des critères d'accessibilité (ARIA, préférences de mouvement réduit), des stratégies de révélation partielle, et des logiques de navigation (flèches, points, défilement par accroche).

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/coastdigitalgroup/coastai-skills/tree/HEAD/website-design/carousel-and-slider-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 de Carrousel et Curseur ?

Objectif

Le Système de Carrousel et Curseur fournit une méthodologie pour concevoir des conteneurs de défilement horizontal qui permettent aux utilisateurs de parcourir une collection de contenu connexe (cartes, images, témoignages) sans consommer un espace vertical excessif. Bien que les carrousels soient souvent critiqués pour leur faible engagement, une approche systématique se concentre sur les affordances, la performance perçue et le contrôle utilisateur, garantissant que la découverte horizontale soit intuitive, accessible et à fort impact.

Cas d'Utilisation

  • Découverte de Produits : Parcourir des "Produits Associés" ou "Nouveautés" dans le commerce électronique.
  • Preuve Sociale : Afficher une séquence de témoignages clients ou d'études de cas.
  • Galeries Multimédias : Collections de photos ou vidéos à haute densité dans une fenêtre d'affichage limitée.
  • Intégration/Tours de Fonctionnalités : Guider les utilisateurs à travers une séquence linéaire de propositions de valeur.
  • Widgets de Tableau de Bord : Gérer plusieurs résumés de données dans une rangée horizontale pour préserver le rythme de la page.

Quand NE PAS Utiliser

  • Étapes Séquentielles Critiques : Si un utilisateur doit voir chaque élément pour accomplir une tâche, utilisez une pile verticale ou une grille pour garantir que rien n'est manqué.
  • Petits Volumes de Contenu : Si vous n'avez que 2 ou 3 éléments, une grille standard est plus efficace et nécessite moins d'interaction.
  • Types de Contenu Variés : Ne mélangez pas différents types de cartes (par exemple, un article à côté d'un produit) dans un seul carrousel ; la cohérence est essentielle pour la lisibilité.
  • Curseurs Marketing de Faible Valeur : Évitez d'utiliser de grands "Carrousels Héroïques" pour des promotions sans rapport que les utilisateurs ignorent généralement (Cécité aux Bannières).

Entrées

  1. Archétype de Contenu : Qu'est-ce qui défile ? (par exemple, cartes card-ui-system, images ou blocs de texte).
  2. Taille du Catalogue : Combien d'éléments y a-t-il dans la collection totale ?
  3. Contexte du Conteneur : S'agit-il d'une section pleine largeur ou contenue dans une colonne de grille ?
  4. Exigences d'Interaction : Nécessite-t-il une lecture automatique, un bouclage infini ou un défilement manuel uniquement ?
  5. Jetons de Marque : Systèmes d'espacement, de typographie et de couleur pour les contrôles et les indicateurs.

Sorties

  1. Spécification d'Anatomie du Carrousel : Définitions visuelles pour le Conteneur, la Piste, la Navigation (Flèches) et la Pagination (Points).
  2. Stratégie de Révélation : Règles définies de "Révélation Partielle d'Élément" pour signaler le contenu caché horizontalement.
  3. Cartographie Réactive : Règles pour le nombre d'éléments par vue sur Mobile, Tablette et Bureau.
  4. Plan d'Accessibilité : Étiquettes ARIA, gestion du focus et spécifications de contrôle du mouvement.

Flux de Travail

1. Déterminer l'Intention de Découverte

Identifiez comment l'utilisateur doit interagir avec les éléments :

  • Linéaire : L'utilisateur se déplace d'un élément à l'autre (par exemple, Intégration).
  • Exploratoire : L'utilisateur peut sauter ou parcourir (par exemple, Grille de Produits).
  • Ambiance : Le contenu se déplace automatiquement (par exemple, Marquee de Logo).

2. Établir le "Motif de Révélation"

Signalez à l'utilisateur qu'il y a plus de contenu à droite :

  • Révélation Partielle : Assurez-vous que l'élément "suivant" est partiellement visible (généralement 10-20 % débordant du bord du conteneur). C'est l'indice visuel le plus fort pour la capacité de défilement.
  • Effet de Fondu : Appliquez un dégradé subtil aux bords du conteneur.

3. Sélectionner les Affordances de Navigation

Fournissez des contrôles clairs pour le mouvement :

  • Flèches (Directionnelles) : Placez-les au centre vertical de la piste (à l'intérieur ou à l'extérieur du conteneur). Idéal pour la navigation à haute densité.
  • Pagination (Points) : Placez-les en dessous de la piste. Idéal pour les séquences courtes (3-7 éléments) pour montrer la progression.
  • Barre de Défilement : Une barre de progression visuelle en bas. Idéal pour les très grandes collections.

4. Définir la Logique des Colonnes Réactives

Mappez combien d'éléments sont visibles à la fois :

  • Bureau : 3 à 5 éléments par vue.
  • Tablette : 2 à 3 éléments par vue.
  • Mobile : 1,2 élément par vue (1 élément complet + révélation partielle).

5. Implémenter les Contrôles et l'Accessibilité

  • Support Clavier : Les utilisateurs doivent pouvoir utiliser ArrowLeft et ArrowRight pour se déplacer entre les éléments ; Tab doit passer au prochain contrôle focalisable, pas entre chaque diapositive.
  • Contrôle du Mouvement : Si vous utilisez la lecture automatique, fournissez un bouton "Pause" visible et arrêtez l'animation au survol, au focus et chaque fois que prefers-reduced-motion: reduce est défini (ne vous fiez pas uniquement au survol/focus).
  • Rôles ARIA : Suivez le motif ARIA APG du carrousel — role="region" avec un aria-label sur le conteneur, aria-roledescription="carousel", et aria-live="polite" (ou "off" pendant la lecture automatique) sur la piste de diapositives afin que les lecteurs d'écran annoncent les changements sans être submergés.
  • Visibilité du Focus : Assurez-vous que l'indicateur de focus sur les flèches, les points et le contenu des diapositives n'est jamais obscurci par des diapositives adjacentes ou un bord de révélation collant (WCAG 2.2 SC 2.4.11).

Règles de Décision

  • La Règle de "Révélation Partielle" : Montrez toujours un aperçu du prochain élément sur mobile pour indiquer le défilement horizontal sans dépendre des flèches.
  • Flèches vs. Points : Utilisez des Flèches si vous avez plus de 5 éléments. Utilisez des Points uniquement si le nombre total est petit (3-7) et que montrer la progression est utile.
  • Logique de Bouclage : Utilisez la "Boucle Infinie" uniquement pour la découverte ambiante (comme les logos). Pour le contenu fonctionnel (comme les produits), utilisez un état "Fin de Piste" où la flèche droite est désactivée.
  • Défilement par Accroche : Utilisez toujours scroll-snap-type: x mandatory pour garantir que les éléments s'alignent parfaitement sur les bords du conteneur après un balayage ou un clic.

Contraintes

  • Accessibilité : Doit supporter prefers-reduced-motion. Tous les contrôles interactifs (flèches/points) doivent respecter WCAG 2.2 SC 2.5.8 (taille minimale de cible 24x24px, 44x44px de préférence pour les flèches principales).
  • Réactivité : Les éléments doivent être fluides. Le conteneur du carrousel ne doit jamais provoquer un débordement horizontal de la page ; le débordement doit être contenu dans le composant. Utilisez clamp() pour la largeur/l'espacement des éléments afin que le nombre d'éléments par vue évolue en douceur au lieu de sauter à des points d'arrêt fixes.
  • Performance Perçue : Utilisez skeleton-state-system pour les éléments qui ne sont pas encore chargés ou qui sont hors écran.

Schémas d'Échec Courants

  • Le Carrousel "Invisible" : Aucune révélation partielle et aucune flèche, rendant le composant comme une grille statique et cassée.
  • Le Piège de la "Lecture Automatique" : Rotation du contenu trop rapide pour que les utilisateurs puissent lire, ou absence de moyen de l'arrêter.
  • Accroche Cassée : Éléments qui s'arrêtent à mi-chemin entre les fenêtres d'affichage, coupant le contenu.
  • États d'Interaction Manquants : Flèches qui n'ont pas d'état de survol/focus, ou qui ne semblent pas désactivées lorsque la fin de la piste est atteinte.
  • Débordement Mobile : Un carrousel qui élargit la largeur de toute la page, obligeant les utilisateurs à "se perdre" en défilant horizontalement.

Critères de Validation

  • Une "Révélation Partielle" ou un indicateur visuel clair du contenu caché est présent.
  • Les contrôles de navigation (Flèches/Points) respectent WCAG 2.2 SC 2.5.8 (zone tactile minimale de 24x24px).
  • La navigation au clavier (Flèches) et la gestion du focus sont implémentées, et les indicateurs de focus ne sont jamais obscurcis (WCAG 2.2 SC 2.4.11).
  • scroll-snap est utilisé pour garantir que les éléments s'alignent sur la grille.
  • La lecture automatique (si utilisée) peut être mise en pause par l'utilisateur et s'arrête automatiquement sous prefers-reduced-motion.
  • Les nombres d'éléments réactifs sont définis pour tous les points d'arrêt majeurs.
  • Les repères et étiquettes ARIA sont correctement appliqués pour les lecteurs d'écran.

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 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 specify a systematic dark theme framework, establishing rules for elevation-based surface colors, desaturated brand accents, text legibility, and media adaptation to ensure an accessible, low-fatigue experience.

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