Support for CSS Level 4 Color Syntax (e.g. oklch(), space-separated hsl(), etc)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- data-visualization, frontend
Línea de trabajo
Empieza reproduciendo el fallo de animación con el CodePen enlazado y, después, sigue el tratamiento del color de Chart.js para colores animados. Compara el comportamiento de oklch(), lab(), color() y la sintaxis de hsl()/rgb() separada por espacios, y define como terminado que esos formatos funcionen en el escenario de animación descrito sin romper el tratamiento existente de colores sólidos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Feature Proposal
Description:
Chart.js currently doesn't have full support for modern CSS Level 4 color formats, like:
oklch(.623 .214 259.815)
color(display-p3 0.27 0.49 0.99)
hsl(216.89 100% 59.61% / 90%) (space-separated notation)
etc.
While these formats are increasingly supported across modern browsers and work fine within Chart.js when used directly as solid colors, they fail in some scenarios - for example, in animations:
animation: {
numbers: { duration: 0 },
colors: {
type: "color",
duration: 1000,
from: "transparent",
}
}
You can see the issue in action here: https://codepen.io/jwvqbbzv-the-looper/pen/RNWWzaG
Feature Request:
Please consider adding support for CSS Level 4 color formats, including oklch(), lab(), color(), and the updated space-separated hsl()/rgb() notation. Native browser support is already quite strong, and support in Chart.js would greatly improve flexibility and modern color handling.
Why it's important:
These formats are increasingly standard and used in modern CSS workflows.
They allow for perceptual color spaces (oklch, lab) and better control for accessibility and color contrast.
Currently, Chart.js users must work around limitations or avoid using animations with modern colors altogether.
Thank you!
Possible Implementation
No response
- Lenguaje dominante
- JavaScript
- Estrellas
- 67.8k
- Forks
- 12k
- Merge medio
- 7 h 27 min
- PR fusionados (30 d)
- 4
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de chartjs/Chart.js
-
fill: 'stack': a dataset's whole fill disappears when its x differs from the line below by ≤ 1e-6 px (happens in animations)Posiblemente ocupada @ump45nose la tomó hace 35 días. Abiertotype: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
Legend pointStyle: 'line' does not apply dataset borderDash patternPosiblemente ocupada @HuzaifaChaudary la tomó hace 67 días. Abiertotype: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
`skipNull` is a configuration option, not a dataset fieldPosiblemente ocupada @puneetdixit200 la tomó hace 154 días. Abiertotype: documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
chartjs/Chart.js#12235 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
type: enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
Todos los issues de chartjs/Chart.js
Issues similares
-
curriculum documentation quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
githubnext/gh-aw-workshop#5367 ·
Los mantenedores suelen responder en 3 días
-
Add: Animal Planet BGAbiertochannels:add check:passed
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
Los mantenedores suelen responder en 4 días
-
beginner blocked
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
hiero-ledger/hiero-sdk-js#4670 ·
Los mantenedores suelen responder en 1 día
-
Media widget: selecting a paused player is ignored while another paused player holds an audio streamAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
area: editor complexity: easy impact: low status: triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
ueberdosis/tiptap#8699 · 1 comentario ·
Los mantenedores suelen responder en 1 día