Generador de box-shadow CSS

Este generador de box shadow CSS te deja elegir una plantilla o ajustar el desplazamiento, el desenfoque, la expansión, el color y la opacidad con los controles. Puedes superponer varias sombras y convertir cualquiera en sombra interior (inset). La vista previa se actualiza al instante y el código CSS se copia con un clic. También puedes pegar tu propio CSS abajo y seguir editándolo.

Fuente: css-backgrounds-3, § 6.1, W3C – CSS Backgrounds and Borders Module Level 3: the box-shadow property. Actualizado: .

Ajustar la sombra

Plantillas

box-shadow:
  0 10px 25px -5px rgba(0, 0, 0, 0.25),
  0 8px 10px -6px rgba(0, 0, 0, 0.1);
Una sombra por línea, separadas por comas; p. ej. 0 4px 12px rgba(0, 0, 0, 0.12)
Mi caja de herramientasTus datos se guardan solo en este navegador.

Resultado

Declaración CSS
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.25), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
Sombras (la primera queda encima)
N.ºDesplazamiento X (px)Desplazamiento Y (px)Desenfoque (px)Expansión (px)ColorTipo
10 px10 px25 px-5 pxrgba(0, 0, 0, 0.25)exterior
20 px8 px10 px-6 pxrgba(0, 0, 0, 0.1)exterior
Cuánto sobresale la sombra de la caja (aprox.)
arriba 10 px · derecha 20 px · abajo 30 px · izquierda 20 px

Cómo se calcula

Cómo funciona box-shadow

Según la especificación del W3C (CSS Backgrounds and Borders Level 3), una sombra se compone de dos a cuatro longitudes, un color opcional y la palabra clave opcional inset:

Cómo crear una sombra CSS

  1. Elige una plantilla o ajusta con los controles el desplazamiento, el desenfoque (blur), la extensión (spread), el color y la opacidad.
  2. Añade más sombras si hace falta y marca las que quieras como sombra interior (inset).
  3. Copia la declaración CSS o pega tu propio código box-shadow para seguir editándolo.
ValorSignificado
1.ª longitudDesplazamiento horizontal a la derecha (negativo: a la izquierda)
2.ª longitudDesplazamiento vertical hacia abajo (negativo: hacia arriba)
3.ª longitudRadio de desenfoque, nunca negativo; 0 si se omite
4.ª longitudExpansión (spread): agranda la sombra; un valor negativo la reduce
Colorsi se omite, se usa el color del texto (currentColor)
insetdibuja la sombra dentro de la caja

Separa varias sombras con comas. La primera sombra se pinta encima y las demás detrás. Las sombras no afectan al diseño ni crean barras de desplazamiento, pero un contenedor con overflow: hidden las recorta.

¿Hasta dónde llega el desenfoque?

La especificación exige un desenfoque que se aproxime a uno gaussiano con una desviación estándar igual a la mitad del radio de desenfoque. La transición mide así unas dos veces el valor de desenfoque y queda centrada en el borde de la sombra: hacia fuera llega aproximadamente un radio de desenfoque.

Ejemplo 0 10px 25px -5px: el borde queda a 25 − 5 = 20 px de la caja, desplazado 10 px hacia abajo. La sombra sobresale unos 20 − 10 = 10 px arriba, 20 px a los lados y 20 + 10 = 30 px abajo. El generador muestra estos valores en «Cuánto sobresale la sombra»: útiles como padding para que nada se recorte.

Usos habituales

Herramientas relacionadas: esquinas redondeadas con el generador de border-radius CSS, degradados con el generador de degradados CSS y colores legibles con el comprobador de contraste.

Preguntas frecuentes

¿Qué diferencia hay entre blur y spread?

El desenfoque (3.er valor) suaviza el borde sin cambiar la superficie de la sombra. La expansión (4.º valor) agranda o reduce la superficie misma antes de desenfocarla. Con desenfoque 0 y expansión positiva obtienes un contorno nítido.

¿Cómo superpongo varias sombras?

Sepáralas con comas, p. ej. 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24). La primera sombra se dibuja encima. En el generador añades más con «+ Sombra».

¿Por qué se corta mi sombra?

Las sombras no cuentan para el tamaño del elemento. Si un contenedor tiene overflow: hidden u overflow: auto, recorta todo lo que sobresale. Dale al contenedor al menos el padding que el generador indica como sobresaliente.

¿box-shadow funciona en todos los navegadores?

Sí. box-shadow, con varias sombras, inset y colores rgba(), funciona sin prefijos en todos los navegadores actuales. El generador escribe los colores transparentes como rgba(), que también entienden los navegadores antiguos.

¿Cómo pongo una sombra solo abajo?

Con una extensión negativa que compense el desenfoque, p. ej. box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.3). Así la sombra no sobresale por arriba ni por los lados, solo 8 px por debajo.

Fuentes y base legal

Última actualización: · Principios editoriales

Herramientas relacionadas