Outils CSS

Gratuit CSS Carousel Generator

Generate native CSS carousel markup with scroll-snap, scroll buttons, scroll markers, and accessible list structure. No JavaScript required.

Chargement de l'outil...

Qu'est-ce que CSS Carousel Generator ?

Un carrousel CSS est un conteneur a defilement horizontal ou vertical dont les elements se positionnent par snap lorsque l'utilisateur fait defiler. Le CSS moderne (Chrome 135+) ajoute des boutons de defilement et marqueurs integres qui fonctionnent sans JavaScript, ainsi que des requetes scroll-state pour styliser l'element actuellement accroche differemment des autres. C'est une alternative native aux bibliotheques de carrousel JavaScript.

Réponse rapide

Construisez un carrousel CSS natif avec scroll-snap, boutons et marqueurs - pas besoin de JavaScript. Utilisez scroll-snap-type pour le comportement de snap, ::scroll-button() pour les fleches, ::scroll-marker() pour les points, et les requetes scroll-state(snapped: true) pour le style de l'element actif.

Last updated: 2026-05-28

Limites

  • Les boutons de defilement (::scroll-button()) et marqueurs (::scroll-marker()) nécessitent Chrome 135+. Firefox et Safari ne les supportent pas encore.
  • Les carrousels CSS ne peuvent pas avancer automatiquement, boucler infiniment ou gerer des comptes d'elements dynamiques sans JavaScript.
  • Les requetes scroll-state font partie de la meme version Chrome 135+. Le support cross-navigateur nécessite un repli JavaScript.

Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub

Comment utiliser cet outil

  1. Choisissez la direction de la mise en page (horizontale ou verticale) et la largeur des elements.
  2. Definissez le comportement de snap et l'alignement - mandatory accroche chaque element, proximity accroche quand on est proche.
  3. Incluez optionnellement des boutons de defilement et des points marqueurs pour la navigation.
  4. Choisissez le balisage de liste accessible (ul/li) et le nombre d'elements pour la sortie de demonstration.
  5. Copiez le CSS et le HTML dans votre page. Ajoutez du contenu reel a chaque element du carrousel.

A quoi il sert

  • Construire un carrousel d'images produit sans ajouter de bibliotheque JavaScript.
  • Creer un rail de cartes pour des articles de blog ou des listes de type app store.
  • Realiser une galerie d'images accessible avec defilement navigable au clavier et points de snap.

Cas d'usage

Exemples concrets

Exemple

Galerie d'images produit

Une page produit e-commerce a besoin d'un carrousel d'images horizontal. Utilisez l'outil avec snap mandatory, alignement start et marqueurs de defilement.

Exemple

Rail de cartes d'articles de blog

Une page d'accueil de blog affiche les articles recents dans un rail de cartes a defilement horizontal. Utilisez proximity snap avec des boutons de defilement.

Erreurs frequentes

  • Utiliser mandatory snap sur de tres longs carrousels - les utilisateurs ne peuvent pas defiler rapidement plusieurs elements, ce qui semble lent.
  • Oublier de rendre le conteneur de defilement accessible au clavier - les utilisateurs clavier ont besoin de tabindex='0' pour defiler avec les fleches.
  • Utiliser des largeurs fixes en pixels sans considerer le mobile.

Vérification

  1. Testez le carrousel avec la navigation clavier : focalisez le conteneur et utilisez les fleches pour defiler.
  2. Verifiez que les points de snap fonctionnent correctement sur les appareils tactiles.

FAQ

Questions sur CSS Carousel Generator

Quels navigateurs supportent les boutons et marqueurs de defilement CSS ?

Les boutons (::scroll-button()) et marqueurs (::scroll-marker()) nécessitent Chrome 135+. Scroll-snap lui-meme est supporte dans tous les navigateurs modernes.

Ai-je besoin de JavaScript pour un carrousel CSS ?

Pour un comportement de base de defilement et snap, aucun JavaScript n'est necessaire. Pour des fonctionnalites comme l'avance automatique, la boucle infinie ou le comptage dynamique d'elements, un peu de JavaScript est encore requis.

Comment styliser l'element actif du carrousel differemment ?

Utilisez la requete de conteneur scroll-state() : @container scroll-state(snapped: true) { .item { opacity: 1; } }.

Outils lies

Autres outils outils css

A essayer aussi

A essayer aussi