Paleta padrão do Tailwind CSS v4
Tailwind gray-400: cor #99A1AF
No Tailwind CSS v4, gray-400 é definido como --color-gray-400: oklch(70.7% 0.022 261.325), que equivale a #99A1AF em hex e rgb(153, 161, 175): um azul acinzentado e claro. No Tailwind v3, gray-400 era #9CA3AF.
Em OKLCH, gray-400 tem luminosidade de 70,7%, croma 0,022 e matiz 261,3°.
O valor cabe no sRGB, então o hex #99A1AF representa a cor sem perda em qualquer tela.
Na v3, gray-400 era #9CA3AF. A diferença para a v4 é ΔE OK 0,7, abaixo do limite em que a maioria das pessoas percebe diferença; o valor da v4 é mais escuro.
O gray do Tailwind é um cinza frio com tom azulado mais leve que slate, o neutro padrão de muitos projetos Tailwind.
Códigos da cor gray-400
| Token do Tailwind v4 | --color-gray-400 |
|---|---|
| OKLCH (valor de origem) | oklch(70.7% 0.022 261.325) |
| HEX | #99A1AF |
| RGB | rgb(153, 161, 175) |
| HSL | hsl(218, 12%, 64%) |
| HWB | hwb(218 60% 31%) |
| CMYK (simples, sem perfil ICC) | cmyk(13%, 8%, 0%, 31%) |
| Decimal | 10.068.399 |
| Hex no Tailwind v3 | #9CA3AF |
| Classes utilitárias | bg-gray-400, text-gray-400, border-gray-400 |
Escala gray (cinza) do Tailwind
Contraste e acessibilidade
Sobre gray-400, texto preto tem contraste de 8,07:1 e passa no AAA para qualquer tamanho de texto; texto branco fica em 2,60:1.
Razões de contraste do WCAG 2.2 (critérios 1.4.3 e 1.4.6: AA exige 4,5:1 para texto normal e 3:1 para texto grande; AAA exige 7:1 e 4,5:1). APCA Lc é o contraste de luminosidade do modelo APCA-W3 0.0.98G proposto para o WCAG 3; quanto maior o valor absoluto, mais legível, e Lc 75 é o mínimo sugerido para texto corrido.
| Combinação | Razão | AA | AA grande | AAA | AAA grande | APCA Lc |
|---|---|---|---|---|---|---|
| Texto preto sobre gray-400 | 8,07:1 | Passa | Passa | Passa | Passa | 53,2 |
| Texto branco sobre gray-400 | 2,60:1 | Falha | Falha | Falha | Falha | −56,0 |
| Texto gray-400 sobre branco | 2,60:1 | Falha | Falha | Falha | Falha | 50,8 |
| Texto gray-400 sobre preto | 8,07:1 | Passa | Passa | Passa | Passa | −51,1 |
Tons claros e escuros
Cada passo mistura var(--color-gray-400) com branco (tons claros) ou preto (tons escuros) em sRGB com correção gama, o mesmo resultado de color-mix(in srgb, var(--color-gray-400), white 25%) no CSS.
Tons claros (misturados com branco)
- 5%
#9ea6b3 - 15%
#a8afbb - 25%
#b3b9c3 - 35%
#bdc2cb - 45%
#c7cbd3 - 55%
#d1d5db - 65%
#dbdee3 - 75%
#e6e8eb - 85%
#f0f1f3 - 95%
#fafafb
Tons escuros (misturados com preto)
- 5%
#9199a6 - 15%
#828995 - 25%
#737983 - 35%
#636972 - 45%
#545960 - 55%
#45484f - 65%
#36383d - 75%
#26282c - 85%
#17181a - 95%
#080809
Harmonias de cor
Girando o matiz em OKLCH e mantendo luminosidade e croma, a complementar de gray-400 é #A89F92 (perto de darkgray), as análogas são #93A3AC e #A09EAE e a tríade se completa com #AE9B9B e #99A498. Para texto por cima, preto dá mais contraste.
| Harmonia | Rotação | Cor |
|---|---|---|
| Complementar | +180° | #a89f92 |
| Análogas | −30°, +30° | #93a3ac#a09eae |
| Tríade | +120°, +240° | #ae9b9b#99a498 |
| Complementar dividida | +150°, +210° | #ac9d94#a1a293 |
Calculadas em OKLCH: o matiz gira 180° (complementar), ±30° (análogas), ±120° (tríade) e 180° ±30° (complementar dividida), com luminosidade e croma mantidos. Quando o resultado sai do sRGB, ele é trazido de volta com o algoritmo de mapeamento de gama do CSS Color 4. Por usar OKLCH, os valores diferem das ferramentas que giram o matiz em HSL, mas as cores ficam com a mesma luminosidade percebida.
Quente ou fria?
Tailwind gray-400 é praticamente neutra: o croma OKLCH é só 0,022, então a temperatura depende do contexto. O leve matiz de 218° dá um toque frio.
Cores nomeadas e do Tailwind mais próximas
A distância é o ΔE OK, a distância euclidiana no OKLab multiplicada por 100. Valores abaixo de cerca de 2 são difíceis de distinguir lado a lado.
Código
<div class="bg-gray-400 text-black">...</div>
<p class="text-gray-400 border-gray-400">...</p>.element {
color: var(--color-gray-400);
background-color: oklch(70.7% 0.022 261.325);
border-color: #99a1af;
outline-color: rgb(153 161 175);
}import SwiftUI
extension Color {
static let gray400 = Color(red: 0.600, green: 0.631, blue: 0.686)
}import androidx.compose.ui.graphics.Color
val Gray400 = Color(0xFF99A1AF)import 'package:flutter/material.dart';
const gray400 = Color(0xFF99A1AF);<!-- res/values/colors.xml -->
<color name="gray_400">#99A1AF</color>Perguntas frequentes
- Qual é o código hex de gray-400 no Tailwind?
- No Tailwind CSS v4, gray-400 é oklch(70.7% 0.022 261.325), que convertido para sRGB dá #99A1AF (rgb(153, 161, 175)). No Tailwind v3, o mesmo nome era #9CA3AF.
- Qual a diferença entre gray-400 na v3 e na v4?
- A v3 usava o hex #9CA3AF; a v4 redefiniu a paleta em OKLCH como oklch(70.7% 0.022 261.325). Na v3, gray-400 era #9CA3AF. A diferença para a v4 é ΔE OK 0,7, abaixo do limite em que a maioria das pessoas percebe diferença; o valor da v4 é mais escuro.
- Como usar gray-400 em CSS puro?
- O Tailwind v4 define cada cor da paleta como variável de tema, então em CSS você escreve var(--color-gray-400). Por padrão o Tailwind só gera as variáveis que o projeto usa; @theme static gera todas.
- Dá para usar texto branco sobre gray-400?
- Texto branco sobre gray-400 tem contraste de 2,60:1 e não passa no AA nem para texto grande do WCAG 2.2. Texto preto chega a 8,07:1 e passa no AA e no AAA. No APCA, o valor é Lc −56,0 para branco e Lc 53,2 para preto.
- Qual cor nomeada do CSS é mais próxima de gray-400?
- A mais próxima é darkgray (#A9A9A9), a ΔE OK 3,5, seguida de rosybrown e cadetblue.
Revisado em por Arielton Oberek.