La versión corta
- Un degradado cónico CSS coloca los colores alrededor de un punto central, barriendo en el sentido de las agujas del reloj desde arriba, en lugar de a lo largo de una línea o hacia fuera en anillos.
- Los puntos de color de un degradado cónico usan ángulos o porcentajes de una vuelta completa, así que 25% y 90deg indican la misma posición.
- Los cortes duros convierten un degradado cónico en porciones, que es la forma más rápida de dibujar un gráfico circular en CSS.
- La palabra clave from gira el punto donde empieza el barrido, y at mueve el punto central.
- repeating-conic-gradient() repite sus puntos alrededor del círculo y, combinado con background-size, dibuja tableros de ajedrez y estallidos.
En esta página
Un degradado cónico CSS barre el color alrededor de un punto central, igual que la aguja de un reloj recorre su esfera. Donde un degradado lineal cambia a lo largo de una línea y uno radial cambia hacia fuera desde el centro, conic-gradient() cambia con el ángulo. Empieza arriba, avanza en el sentido de las agujas del reloj y se usa en cualquier sitio donde CSS admita una imagen. Eso lo convierte en la herramienta natural para ruedas de color, gráficos circulares, anillos de carga y los reflejos angulares del metal cepillado.
conic-gradient(#ef4444, #eab308, #22c55e, #06b6d4, #3b82f6, #a855f7, #ef4444)Si estás eligiendo entre tipos de degradado para un diseño y no aprendiendo la sintaxis, los tipos de degradado y la guía de diseño de degradados cónicos son mejores puntos de partida.
La sintaxis de conic-gradient()
/* start angle centre stops */
conic-gradient(from 90deg at 30% 50%, #0ea5e9, #6366f1, #0ea5e9)
/* stops as angles or as percentages of the turn */
conic-gradient(#f59e0b 0deg 90deg, #1e293b 90deg)
conic-gradient(#f59e0b 0% 25%, #1e293b 25%)| Parte | Ejemplo | Valor por defecto |
|---|---|---|
| Ángulo inicial | from 45deg | from 0deg, hacia arriba |
| Centro | at 30% 50%, at top left | at center |
| Interpolación | in oklch, in hsl longer hue | sRGB para colores hex |
| Posición del punto | 90deg, 0.25turn, 25% | repartidos por igual en la vuelta |
Los ángulos avanzan en el sentido de las agujas del reloj desde arriba: 90deg son las tres en punto, 180deg las seis. La definición completa está en la página de conic-gradient() de MDN. La compatibilidad es universal desde hace años en las versiones actuales de Chrome, Edge, Safari y Firefox, así que no hacen falta prefijos.
Girar y mover el barrido
from gira todo el degradado, útil cuando la costura entre el primer y el último color quedaría arriba. at mueve el centro. Llevarlo a una esquina convierte la rueda en un abanico de rayos, y sacarlo por completo de la caja da un suave velo inclinado que no se parece en nada a una rueda.
Gráficos circulares y de anillo en CSS
Da a cada porción un inicio y un final, y deja que cada una empiece donde acabó la anterior. Escribir 0 como segunda posición de un punto es un atajo: una posición menor que la anterior se ajusta a ella, así que el color nuevo empieza justo donde acabó el último. Redondea el elemento con border-radius: 50% y recorta un agujero con una máscara radial para convertir el gráfico circular en uno de anillo.
.pie {
width: 12rem;
aspect-ratio: 1;
border-radius: 50%;
background: conic-gradient(
#6366f1 0 40%, /* 40% */
#22d3ee 0 65%, /* 25% */
#f59e0b 0 85%, /* 20% */
#e2e8f0 0 /* the rest, 15% */
);
}
.donut {
/* same background as .pie, then a hole */
mask: radial-gradient(farthest-side, transparent 58%, #000 59%);
}conic-gradient(#6366f1 0 40%, #22d3ee 0 65%, #f59e0b 0 85%, #e2e8f0 0)Los bordes duros de los degradados cónicos pueden verse algo dentados a lo largo de las líneas de las porciones en algunos navegadores. Si te molesta, deja una fracción de grado entre los puntos, como #6366f1 0 39.8%, #22d3ee 40.2% 65%, para que el borde tenga un pelo de mezcla.
Ruedas de color con interpolación de tono
Una rueda de color suele necesitar seis o siete puntos. Con los métodos de interpolación puedes pedir al navegador que recorra él mismo el círculo de tonos. longer hue toma el camino largo entre dos tonos, y cuando ambos puntos son el mismo color, el camino largo es el círculo entero, así que dos rojos dan un espectro completo.
.wheel {
border-radius: 50%;
background: conic-gradient(in hsl longer hue, #ff0000, #ff0000);
}Brillo metálico y reflejos
El metal cepillado y los discos pulidos reales captan la luz en bandas angulares, que es justo lo que dibuja un degradado cónico. Alterna unos cuantos grises claros y oscuros, con espaciado desigual, y la superficie se lee como metal. En capas con poca opacidad sobre un color, el mismo truco añade brillo a botones y tarjetas; mira los botones con degradado para un ejemplo trabajado.
Degradados cónicos repetidos para patrones
repeating-conic-gradient() repite su lista de puntos alrededor de la vuelta. Los puntos cortos de bordes duros dan estallidos. Junto con background-size, un patrón de cuartos de dos colores se repite formando un tablero de ajedrez, un patrón que de otro modo es incómodo de dibujar con degradados. Más en los patrones CSS.
.checkerboard {
background: repeating-conic-gradient(#e2e8f0 0 25%, #ffffff 0 50%) 0 0 / 32px 32px;
}Preguntas frecuentes
¿Qué es un degradado cónico en CSS?
Es un degradado cuyos colores cambian con el ángulo alrededor de un punto central, empezando arriba y avanzando en el sentido de las agujas del reloj, y se escribe con conic-gradient().
¿Cómo hago un gráfico circular con CSS?
Usa cortes duros en un degradado cónico, como conic-gradient(#6366f1 0 40%, #22d3ee 0 65%, #e2e8f0 0), en un elemento con border-radius: 50%. Pon también los valores en texto para los lectores de pantalla.
¿Cómo giro un degradado cónico?
Añade from y un ángulo como primer argumento, por ejemplo conic-gradient(from 90deg, ...). El barrido empieza entonces a las tres en punto y no arriba.
¿Por qué los bordes de mi degradado cónico salen dentados?
Los cortes duros no tienen mezcla, y algunos navegadores dibujan el límite sin suavizar. Dejar una fracción de grado entre puntos vecinos lo suaviza.
¿Funcionan los degradados cónicos en todos los navegadores?
Sí, las versiones actuales de Chrome, Edge, Safari y Firefox admiten conic-gradient() y repeating-conic-gradient() sin prefijos.
Escrito por Gradiently
El equipo detrás de Gradiently, una herramienta de diseño creada en torno a los Marks: degradados vivos que hacen que todo lo que diseñas parezca tuyo.
Ver nuestro perfil


