Générateur CSS clip-path, gratuit

Choisissez un préréglage de forme, ajustez les curseurs et copiez le code CSS clip-path.

Type de forme

Aperçu en direct

CSS généré

Comment utiliser

  1. Choisissez un type de forme : polygone, cercle, ellipse ou inset (rectangle avec coins arrondis optionnels).
  2. Faites glisser les points de contrôle : déplacez les poignées de la forme sur l'aperçu pour personnaliser précisément la zone de masque.
  3. Copiez le CSS : la valeur de la propriété clip-path générée est prête à coller dans votre feuille de style.

Pourquoi utiliser le générateur CSS clip-path ?

CSS clip-path crée des formes non rectangulaires en masquant tout ce qui est en dehors d'une zone définie. On l'utilise pour des séparateurs de sections en diagonale, des recadrages d'images hexagonaux, des formes de boutons personnalisées, des effets de survol créatifs et des révélations d'images masquées. Écrire à la main les coordonnées d'un polygone clip-path implique de calculer les pourcentages de chaque sommet, fastidieux et difficile à visualiser. Ce générateur interactif vous permet de glisser des points visuellement et d'obtenir les valeurs CSS exactes instantanément.

Fonctionnalités

Questions fréquentes

clip-path affecte-t-il les zones cliquables ?

Oui. Par défaut, les événements de pointeur ne sont enregistrés qu'à l'intérieur de la zone de masque, la zone masquée est à la fois invisible et non cliquable. Pour rendre l'élément entièrement cliquable tout en le masquant visuellement, utilisez pointer-events: all sur l'élément ou superposez une couche transparente.

Puis-je animer clip-path ?

Oui, clip-path peut faire l'objet de transitions et d'animations CSS. Animez entre deux polygones ayant le même nombre de points pour un effet de morphing fluide. Des formes avec des nombres de points différents s'animeront par saut plutôt que par interpolation.

clip-path est-il pris en charge par tous les navigateurs ?

clip-path est pris en charge par tous les navigateurs modernes. Pour des formes SVG via la syntaxe url(#id), le support est encore plus large. Les valeurs basiques polygon, circle, ellipse et inset fonctionnent universellement sur Chrome, Firefox, Safari et Edge.

Ce que CSS clip-path fait vraiment

La propriété CSS clip-path masque un élément à une forme choisie : tout ce qui est à l’intérieur de la forme est visible, tout ce qui est à l’extérieur devient transparent. La boîte de mise en page de l’élément est inchangée (elle occupe toujours le même rectangle pour les besoins de l’effondrement de marge, du flux et du positionnement des frères et sœurs), mais seuls les pixels à l’intérieur de la région de découpe sont dessinés. Cela rend clip-path différent du recadrage (qui change l’image en permanence) et différent du positionnement (qui déplace les choses) : clip-path est un masque appliqué au moment de l’affichage, juste avant que les pixels n’atteignent l’écran.

Il y a quatre fonctions de forme de base : polygon() (une liste de sommets en coordonnées pourcentage ou pixel), circle() (rayon plus un centre), ellipse() (deux rayons plus un centre) et inset() (un rectangle mesuré depuis chaque bord, optionnellement avec des coins arrondis). Pour les formes trop complexes pour ces quatre (courbes irrégulières, étoiles avec des indentations concaves, contours calligraphiques), clip-path accepte aussi un chemin SVG via path() ou une référence à un élément <clipPath> SVG via url(#id). Le navigateur dessine l’élément, puis le compose à travers le masque alpha défini par votre forme.

clip-path compte pour le design web moderne parce qu’il permet des formes qui auraient nécessité des éditeurs d’images il y a une décennie. Un séparateur de section diagonal, un recadrage d’image hexagonal, une bannière en chevron, une photo en forme d’étoile : tout est maintenant possible en CSS pur, mis à l’échelle à n’importe quelle taille, animable au survol et accessible parce que l’élément sous-jacent est toujours du HTML, pas une image rasterisée. Le compromis est la verbosité : écrire polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%) à la main pour un simple losange est faisable, mais une étoile à 12 sommets ou un détourage de logo personnalisé est impraticable sans un éditeur visuel. C’est là que ce générateur s’insère.

Comment cet outil fonctionne en coulisses

L’aperçu est un div avec votre clip-path choisi appliqué en CSS inline, mis à jour à chaque glissement d’une poignée de contrôle. Les poignées sont des cercles positionnés en absolu superposés sur l’aperçu aux coordonnées en pourcentage de chaque sommet. Quand vous faites glisser une poignée, JavaScript capture l’événement mousemove (ou touchmove), convertit la position en pixels en un pourcentage de la zone d’aperçu, met à jour ce sommet dans le polygone en mémoire et ré-applique la chaîne clip-path. Le rendu en temps réel signifie que vous voyez la forme changer pendant que vous glissez, pas après.

Le CSS généré est construit en joignant les sommets dans une chaîne de polygone : polygon(x1% y1%, x2% y2%, ...) pour le mode polygone, ou circle(r% at cx% cy%), ellipse(rx% ry% at cx% cy%), inset(top right bottom left round radius) pour les types de forme plus simples. Les valeurs en pourcentage plutôt qu’en pixels sont utilisées parce que les pourcentages s’adaptent automatiquement à l’élément : un polygone qui semble correct à 300x200 semble aussi correct à 600x400 sans changement au CSS. La boîte de code se met à jour à chaque interaction, et le bouton Copier le CSS écrit la valeur actuelle dans votre presse-papiers.

Rien ne quitte votre navigateur. L’aperçu, les calculs de forme, la génération CSS et la copie au presse-papiers sont tous du JavaScript côté client. Aucune requête réseau n’est faite ; aucune image n’est téléversée ; aucune analyse de vos choix de forme. L’outil n’a aucun backend au-delà du HTML statique et du JavaScript servis une fois au premier chargement. Ouvrez l’onglet réseau du navigateur pendant l’utilisation et vous verrez zéro requête après le chargement initial de la page. Le CSS que vous générez est à vous pour coller dans n’importe quelle feuille de style.

Brève histoire du découpage CSS

Flux du monde réel

Pièges courants et ce qu’ils signifient

Confidentialité : tout s’exécute dans votre navigateur

Les outils générateurs CSS tombent traditionnellement dans deux camps : les pages HTML simples avec JavaScript côté client (privées, rapides, sans compte) et les éditeurs complets avec projets sauvegardés dans le cloud (collaboratifs, mais chaque modification de forme est enregistrée sur le serveur de quelqu’un d’autre). Cet outil est fermement dans le premier camp. Les coordonnées de polygone que vous faites glisser, les couleurs que vous choisissez, le CSS que vous copiez : tout reste dans votre session de navigateur, jamais envoyé nulle part. Rafraîchissez la page et l’état est parti sauf si vous avez copié le CSS d’abord.

L’implication de confidentialité compte surtout pour le travail propriétaire. Une agence de design prototypant une forme de bouton personnalisée pour une refonte de marque confidentielle, un développeur indépendant travaillant sur une UI de jeu non annoncée, une équipe d’entreprise concevant des mises en page pour un produit encore sous NDA : tout contexte où la forme elle-même ou son historique d’itération pourrait fuir des informations sur le travail en cours. Avec cet outil, aucun de ces risques n’existe parce que rien n’est capturé. Ouvrez l’onglet Réseau du navigateur en glissant les poignées et vous verrez zéro requête sortante.

Quand un autre outil est le bon choix

Autres questions fréquentes

Puis-je utiliser des pourcentages ou des pixels pour les coordonnées de sommet ?

Les deux fonctionnent. Les pourcentages s’adaptent avec la boîte de l’élément, donc un polygone défini en pourcentages garde sa forme proportionnelle quand l’élément se redimensionne. Les pixels sont absolus, donc un polygone avec des coordonnées en pixels garde la même taille quel que soit l’élément. Utilisez des pourcentages pour les formes qui doivent se redimensionner avec la mise en page (la plupart des cas) et des pixels pour les formes qui nécessitent des positions de pixel exactes (par exemple, l’alignement à un élément de design spécifique). Vous pouvez aussi mixer : polygon(50% 10px, 100% 50%, ...) est valide.

clip-path affectera-t-il le SEO ou les lecteurs d’écran ?

Non. clip-path est une propriété purement visuelle. Le HTML sous-jacent est entièrement accessible : le texte à l’intérieur d’un élément découpé est toujours indexé par les moteurs de recherche, toujours annoncé par les lecteurs d’écran, toujours sélectionnable par navigation au clavier. Utilisez clip-path pour le style visuel ; ne l’utilisez pas comme moyen de cacher le contenu sémantiquement (cela nécessite display: none ou des attributs aria-hidden). Le contenu visuellement découpé reste présent dans l’arborescence d’accessibilité.

Comment rendre un clip-path responsive ?

Utilisez des pourcentages au lieu de pixels, et vérifiez le résultat à différents points de rupture. Pour les formes qui nécessitent des proportions différentes sur mobile versus bureau, utilisez les media queries CSS pour échanger la valeur clip-path : déclarez un clip-path différent à l’intérieur de @media (max-width: 768px) pour la forme mobile. Pour des besoins responsifs complexes (par exemple, un polygone qui devient un cercle sur mobile), envisagez d’utiliser JavaScript pour recalculer le clip-path en fonction de la taille de la fenêtre, bien que les approches CSS pures gèrent la plupart des cas.

clip-path peut-il être appliqué aux vidéos et aux iframes ?

Oui. clip-path fonctionne sur tout élément HTML, y compris <video> et <iframe>. Le masque s’applique au niveau de l’élément, donc une vidéo découpée à un hexagone se joue à l’intérieur de cet hexagone. Les contrôles vidéo (lorsqu’ils sont affichés) sont aussi découpés, ce qui peut cacher par inadvertance les boutons play/pause ; enveloppez la vidéo dans un élément conteneur si vous avez besoin que les contrôles soient visibles en dehors de la zone découpée.

Quel est le nombre maximum de sommets de polygone ?

Il n’y a pas de limite formelle spécifiée par la norme CSS. En pratique, les navigateurs gèrent des polygones avec des centaines de sommets sans erreurs de rendu, mais les performances se dégradent avec le nombre de sommets, surtout pour les clip-paths animés. Visez 3 à 12 sommets pour la plupart des formes décoratives ; si vous avez besoin de plus de complexité, passez à un path() SVG pour une création plus propre et des caractéristiques de performance similaires. Au-delà de 50 sommets, clip-path devient plus difficile à maintenir à la main et un flux de travail avec éditeur SVG a plus de sens.

Puis-je découper du texte au lieu de simplement des images et des boîtes ?

Oui. clip-path fonctionne aussi sur les éléments de texte, les masquant comme n’importe quel autre élément. L’effet visuel est « du texte qui apparaît à travers une forme ». Pour des effets de forme de texte plus sophistiqués (par exemple, en utilisant un contour de texte comme masque de découpe pour une image), combinez clip-path avec background-clip: text, qui utilise la forme du texte elle-même comme région de découpe pour l’arrière-plan de l’élément. Motif courant : grand texte avec un arrière-plan en dégradé visible seulement à l’intérieur des formes de texte.

Outils associés