Conçois un box-shadow CSS multi-couches avec aperçu live et copie le CSS prêt à l'emploi.
Dernière mise à jour
Presets
Aperçu
Couches d'ombre
Offset X0px
Offset Y8px
Blur24px
Spread0px
Opacité0.18
Couleur
CSS
box-shadow:
0px 8px 24px 0px rgba(0, 0, 0, 0.18);
Qu'est-ce qu'un générateur de box-shadow ?
box-shadow est la propriété CSS qui ajoute ombres, halos et creux à n'importe quel élément. C'est le plus gros levier pour donner de l'*élévation* à un design plat - les cartes décollent de la page, les modales flottent, les boutons paraissent cliquables.
L'astuce, c'est qu'une *bonne* ombre est rarement une seule couche. Les ombres réelles sont plus douces et reçoivent de la lumière ambiante - la plupart des design systems (Material, iOS, Tailwind) empilent 2 à 3 déclarations box-shadow avec des offsets et opacités différents. À la main c'est laborieux ; un générateur te laisse régler chaque couche visuellement et voir le rendu combiné en direct.
Le générateur Coddy gère un nombre illimité de couches, les ombres *externes* et *inset*, la couleur et l'opacité par couche, et des presets pour les motifs les plus courants : cartes discrètes, drops nets, halos de marque, creux inset et surfaces neumorphic. Copie le CSS et colle-le dans ta feuille de styles - sans upload, sans compte, sans filigrane.
Ce qu'il faut savoir sur box-shadow
La syntaxe est box-shadow: [inset] <x> <y> <blur> <spread> <color>. inset met l'ombre *à l'intérieur* de l'élément ; sans lui, elle tombe à l'extérieur.
*Blur* adoucit le bord - plus la valeur est grande, plus l'ombre est diffuse. *Spread* gonfle ou rétrécit l'ombre avant le blur (valeurs négatives = retrait, utile pour des lifts internes doux).
Plusieurs ombres se séparent par une virgule et s'empilent de l'arrière vers l'avant dans l'ordre écrit - la première déclarée se retrouve *sous* les suivantes dans le rendu final.
Comment dessiner un box-shadow
1
Pars d'un preset
Choisis le preset le plus proche du rendu visé - carte discrète, élévation douce, drop net, halo de marque, creux inset, neumorphic. Les presets sont de bons points de départ à affiner.
2
Affine la couche active
Joue avec les sliders X/Y, blur, spread, couleur, opacité. L'aperçu à gauche se met à jour en direct. Opacité basse + blur élevé = ombres *plus douces*.
3
Empile d'autres couches
Clique *Ajouter une couche* pour une seconde ombre. Une vraie profondeur utilise presque toujours deux couches : une courte et serrée (ombre de contact) et une longue et douce (ombre ambiante).
4
Active inset pour des creux
Activer *Inset* peint l'ombre à l'intérieur de l'élément. Combinée à une légère ombre extérieure, ça donne l'effet d'un bouton appuyé.
5
Copie le CSS
Quand l'aperçu correspond à ton design, clique sur *Copier le CSS*. Colle le résultat dans ta feuille de styles - la règle générée inclut toutes les couches actives.
Aide-mémoire box-shadow
Chaque valeur de box-shadow: x y blur spread color et son rôle.
Valeur
Effet
Plage typique
Offset X
Décale l'ombre horizontalement ; positif = droite
−40px à 40px
Offset Y
Décale l'ombre verticalement ; positif = bas
0 à 40px pour une lumière naturelle
Blur
Adoucit le bord
0 à 80px
Spread
Gonfle ou rétrécit avant le blur
−30 à 30px
Color
Toute couleur CSS ; rgba() permet d'ajuster l'opacité par couche
rgba(0,0,0,0.05–0.3) pour des ombres naturelles
inset
Peint l'ombre à l'intérieur de l'élément
-
Plusieurs couches
Séparées par des virgules ; empilées arrière→avant
Une ombre courte et serrée définit le point de contact, une plus longue et douce simule la lumière ambiante. C'est le motif qu'utilisent la plupart des design systems modernes.
Halo de marque
Glow coloré doux
box-shadow:0024px4pxrgba(108,140,255,0.45);
Mets X et Y à zéro pour que le halo rayonne uniformément. Un petit spread positif épaissit le glow avant que le blur ne l'adoucisse. À doser - les halos colorés attirent beaucoup l'attention.
Les ombres inset se peignent à l'intérieur. Une ombre douce donne l'impression d'un creux ; un inset d'1 px ajoute un liseré interne discret pour bien le définir.
Erreurs fréquentes avec box-shadow
Du noir pur à forte opacité. Ça se lit comme une découpe dure, pas comme une ombre. Descends à 0.06–0.18 pour une élévation naturelle.
Oublier l'offset Y. Une ombre X=0/Y=0 reste *derrière* l'élément uniformément - ok pour un glow, faux pour une carte censée flotter.
Empiler trop de couches. Trois suffisent souvent ; dix produisent un flou confus et coûtent cher à peindre.
FAQ CSS box-shadow
Que signifie chaque valeur de box-shadow ?
box-shadow: x y blur spread color. Les deux premiers sont des offsets ; *blur* adoucit le bord ; *spread* change la taille avant le blur ; la couleur est n'importe quelle couleur CSS (utilise rgba() pour l'opacité). Ajoute inset au début pour que l'ombre soit intérieure.
Comment empiler plusieurs ombres dans une seule règle ?
Sépare chaque ombre par une virgule. Elles s'affichent de l'arrière vers l'avant dans l'ordre écrit, donc la première finit *sous* les suivantes. Idéal pour combiner une ombre de contact serrée à une ombre ambiante douce.
Différence entre box-shadow et filter: drop-shadow() ?
box-shadow suit le rectangle de l'élément et est rapide à peindre. drop-shadow() suit le canal alpha (top pour SVGs et PNGs transparents) mais coûte plus cher. Utilise box-shadow pour cards et boutons ; drop-shadow() pour formes irrégulières.
Pourquoi mon ombre est pixelisée ?
Soit le blur est très faible (un blur 0 est volontairement net), soit l'élément est mis à l'échelle. Augmente le blur ou cherche un transform: scale() dans un ancêtre.
Le box-shadow modifie-t-il le layout ?
Non. L'ombre se peint hors de la boîte mais ne pousse pas les voisins. Si le parent doit laisser de la place, donne-lui du padding ou overflow: visible.