Misturador de cores

Escolha duas cores, a quantidade de passos e o espaço de interpolação para obter a escala completa entre elas.

Escala gerada

    Ponto médio:

    O que é interpolação de cor

    Misturar duas cores num computador é calcular pontos intermediários entre dois conjuntos de números. Se a cor A vale 0 num canal e a cor B vale 255, o ponto a 50% do caminho vale 127,5, arredondado para 128. Esse cálculo se chama interpolação, e o resultado depende de quais números você interpola: os canais vermelho, verde e azul, ou matiz, saturação e luminosidade, ou as coordenadas de um espaço perceptual.

    No misturador, você escolhe a cor A, a cor B, de 3 a 20 passos e o espaço de interpolação. A escala inclui as duas pontas, então 5 passos significam A, três tons intermediários e B. Cada amostra mostra o HEX e copia o código com um clique, a cor do ponto médio aparece em destaque e você pode copiar a escala inteira como variáveis CSS ou como JSON, prontas para um arquivo de tokens.

    RGB, HSL e OKLCH na prática: vermelho com azul

    O jeito mais claro de ver a diferença é misturar vermelho (#FF0000) com azul (#0000FF) e olhar o ponto médio em cada espaço.

    EspaçoPonto médioO que acontece
    RGB #800080Média de cada canal: rgb(128, 0, 128). Um roxo escuro, mais escuro na percepção do que as duas pontas.
    HSL #FF00FFO matiz vai de 0° a 240° pelo menor arco, passando por 300°, com saturação e luminosidade constantes. O meio é magenta puro.
    OKLCH #BA00C2Luminosidade percebida e croma ficam entre os das duas cores, e o matiz segue pelo menor arco. O resultado é um roxo-magenta mais claro e mais vivo que o do RGB.

    O RGB é o comportamento padrão dos navegadores e o mais previsível, mas escurece e acinzenta o meio de cores distantes. O HSL mantém a saturação alta, só que a luminosidade dele não corresponde à que o olho percebe: um amarelo e um azul com o mesmo L de 50% parecem ter claridades muito diferentes, e a escala pode ganhar faixas que “saltam”. O OKLCH foi desenhado para que distâncias iguais nos números pareçam distâncias iguais na tela, por isso gera os degraus mais regulares. A opção OKLCH do misturador interpola claridade, croma e matiz (pelo menor arco do círculo) e equivale a color-mix(in oklch, …) no CSS. Quando o resultado sai da gama sRGB, como nesse roxo intenso, o valor é recortado para o HEX exibível mais próximo.

    Mistura aditiva, subtrativa e o que este misturador calcula

    Na mistura aditiva, a da luz, somar vermelho e verde dá amarelo: #FF0000 + #00FF00 = #FFFF00. Na subtrativa, a das tintas e da impressão, cada pigmento absorve parte da luz, e misturar tudo leva ao escuro. O misturador não faz nenhuma das duas: ele calcula uma média ponderada entre as cores, como um gradiente parado. Por isso vermelho com verde em RGB dá #808000, um verde-oliva, e não amarelo. Use a ferramenta para planejar cores de tela; ela não prevê o resultado de misturar tintas reais, que depende dos pigmentos.

    Onde uma escala de cores faz diferença

    Como montar uma escala de design system a partir de uma cor

    Suponha que a cor da marca seja azul royal (#4169E1) e que ela ocupe a posição 500.

    1. Tons claros (50 a 400): use #FFFFFF como cor A e #4169E1 como cor B, com 6 passos em OKLCH. Descarte o branco puro; os quatro intermediários viram 100 a 400. Para o 50, gere um passo extra mais perto do branco ou repita a mistura com mais passos.
    2. Tons escuros (600 a 900): use #4169E1 como cor A e uma versão bem escura e ainda azulada, como #000080, como cor B. Misturar com preto puro costuma deixar os tons escuros sem vida.
    3. Revise e exporte: confira se os passos parecem igualmente espaçados, teste o contraste do texto sobre cada tom e copie tudo como variáveis CSS.
    :root { --brand-100: #...; --brand-500: #4169E1; --brand-900: #...; }

    Para escolher cores que combinem com a principal, e não só variações dela, use o gerador de paletas.

    color-mix(): a mesma ideia direto no CSS

    A função color-mix() faz no navegador o que o misturador faz aqui, com uma proporção e um espaço de cor:

    .destaque { background: color-mix(in oklch, red 50%, blue); }
    .botao:hover { background: color-mix(in oklab, var(--brand-500), black 15%); }

    Ela é útil para derivar estados de hover, bordas e fundos suaves a partir de uma única variável, sem pré-calcular cada tom. Com in oklch, o navegador calcula o mesmo que a opção OKLCH do misturador: vermelho com azul dá o roxo-magenta vivo da tabela. Se preferir uma transição menos saturada, in oklab mistura as mesmas coordenadas perceptuais em linha reta, sem girar o matiz, e dá um roxo mais suave. O misturador continua útil para ver a escala inteira e fixar valores HEX num design system. O guia de cores modernas no CSS detalha color-mix(), OKLCH e o suporte nos navegadores.

    Perguntas frequentes

    O que acontece quando misturo duas cores digitalmente?

    Cada tom intermediário é uma interpolação entre os valores das duas cores. O resultado depende do espaço escolhido: RGB é linear nos canais, HSL gira pelo círculo cromático e OKLCH segue a percepção humana.

    Qual espaço de cor usar para misturar?

    OKLCH costuma gerar as transições mais uniformes e vivas. RGB é previsível e igual ao que o navegador faz em gradientes simples; HSL ajuda a atravessar o círculo de matizes.

    A mistura digital é igual à de tintas?

    Não. Tintas misturam de forma subtrativa (azul + amarelo = verde); telas misturam luz. Este misturador simula a mistura de luz/valores numéricos.

    Para que serve uma escala de cores?

    Escalas são usadas em design systems (tons 50 a 900), mapas de calor, gráficos sequenciais e gradientes. Ter passos uniformes deixa a interface mais consistente.