CSS definierar 148 namngivna färger som webbläsare känner igen via nyckelord i stället för numeriska koder. I stället för att skriva #ff6347 i en stilmall kan du skriva Tomato. I stället för #6a5acd kan du skriva SlateBlue. Dessa namn standardiserades i CSS Color Level 3 (2011) och Level 4 (2022), med utgångspunkt i de ursprungliga 17 färgerna från CSS 2.1 och de 140 X11-färgnamnen som ärvts från tidiga Unix-fönstersystem.
En färgnamnsletare tar ett godtyckligt hex- eller RGB-värde och hittar det närmaste namngivna CSS-färgvärdet. Matchningsalgoritmen beräknar avståndet mellan två färger i RGB-rymden, vanligtvis euklidiskt avstånd: sqrt((r1-r2)^2 + (g1-g2)^2 + (b1-b2)^2). Den namngivna färg med kortast avstånd till din inmatning vinner. Om avståndet är noll är din inmatning en exakt träff för det namnet.
Detta är användbart när du vill ha läsbar, självdokumenterande CSS. En regel som background-color: Tomato kommunicerar avsikt snabbare än background-color: #ff6347. Det hjälper också när du behöver referera till en färg muntligt i en designgranskning, tillgänglighetsrevision eller dokumentation. I stället för att säga 'den rödorangea' kan du säga 'Tomato'.
Varför använda denna färgnamnsletare?
Att slå upp närmaste namngivna färg för hand innebär att bläddra igenom en referenstabell med 148 poster och uppskatta hex-värden med ögat. Det här verktyget utför avståndsberäkningen åt dig och returnerar de 5 närmaste träffarna med exakta hex-koder och avståndsvärden.
🔍
Identifiera valfri färg med namn
Klistra in en hex-kod från en designfil, färgväljare eller skärmdump och få det närmaste CSS-färgnamnet direkt. Verktyget returnerar 5 träffar rankade efter avstånd så att du kan välja bäst passande.
🔒
Integritetsbevarande bearbetning
All färgmatchning körs i din webbläsare. Inga färgvärden skickas till någon server. Verktyget fungerar offline efter att sidan laddats.
⚡
Omedelbara resultat
Avståndsberäkningar körs vid varje knapptryckning. Ändra ett enskilt tecken i hex-inmatningen och de rankade resultaten uppdateras omedelbart utan fördröjning.
📋
Kopiera namn och hex-koder
Klicka på valfritt resultat för att kopiera färgnamnet eller hex-värdet till urklipp. Klistra in direkt i CSS, Sass-variabler, Tailwind-konfiguration eller designverktygsfält.
Användningsområden för färgnamnsletaren
Läsbar CSS-skrivning
Frontend-utvecklare som ersätter hex-literaler med namngivna färger får stilmallar som är lättare att skanna vid kodgranskning. Namngivna färger kommunicerar avsikt utan att kräva en färgförhandsgransknings-extension.
API-svarsmärkning
Backend-ingenjörer som bygger färgrelaterade API:er kan returnera en läsbar etikett vid sidan av en hex-kod. Att hitta närmaste CSS-färgnamn ger användarna en bekant referenspunkt utan att behöva underhålla en anpassad namnordbok.
Tillgänglighetsdokumentation
QA-ingenjörer som dokumenterar färgkontrastproblem kan referera till färger med namn i felrapporter. Att skriva 'den Crimson-färgade texten på DarkSlateGray-bakgrunden misslyckas AA-kontrast' är tydligare än att ange hex-par.
Teckenförklaringar för datavisualisering
Dataingenjörer som märker diagramserier med namngivna färger producerar teckenförklaringar som är läsbara utan en färgprov. Namnet 'CornflowerBlue' är mer användbart i ett utskrivet eller monokromt sammanhang än '#6495ed'.
Designöverlämning
När en designer delar en färg från Figma eller Sketch som ett hex-värde kan en utvecklare slå upp närmaste CSS-namn och diskutera det med namn i Slack eller en pull request-kommentar.
Lära sig CSS-färger
Studenter som utforskar CSS kan ange godtyckliga hex-värden och upptäcka vilka namngivna färger som finns i närheten. Att bläddra i avståndresultaten bygger upp bekantskap med de 148 inbyggda färgnyckelorden.
Referens för CSS-färgnamn per grupp
CSS Color Level 4-specifikationen definierar 148 namngivna färgnyckelord. Tabellen nedan organiserar dem per nyansgross med antal och några exempelnamn per grupp. Varje namn som listas här är ett giltigt CSS-färgnyckelord som fungerar i alla moderna webbläsare.
Färggrupp
Antal
Exempelnamn
Red / Pink
14
IndianRed, LightCoral, Salmon, DarkSalmon, Crimson, Red, +8 more
Orange
5
Coral, Tomato, OrangeRed, DarkOrange, Orange
Yellow
10
Gold, Yellow, LightYellow, LemonChiffon, PapayaWhip, Moccasin, +4 more
Green
19
GreenYellow, Chartreuse, LawnGreen, Lime, LimeGreen, SpringGreen, +13 more
Blue / Cyan
24
Aqua, Cyan, LightCyan, PaleTurquoise, Aquamarine, Turquoise, +18 more
Purple
19
Lavender, Thistle, Plum, Violet, Orchid, Fuchsia, +13 more
Brown
17
Cornsilk, BlanchedAlmond, Bisque, NavajoWhite, Wheat, BurlyWood, +11 more
Gray / White
27
White, Snow, HoneyDew, MintCream, Azure, AliceBlue, +21 more
Färgavstånd: euklidiskt RGB jämfört med perceptuellt
Metoden som används för att mäta färgavstånd påverkar vilken namngiven färg som rapporteras som närmaste träff. Det finns två metoder och de kan ge olika resultat för samma inmatning.
Euklidiskt RGB-avstånd
Behandlar R, G, B som axlar i ett 3D-rum och beräknar rätlinjigt avstånd: sqrt((r1-r2)^2 + (g1-g2)^2 + (b1-b2)^2). Enkelt, snabbt och används av det här verktyget. Det fungerar bra i de flesta praktiska fall men kan avvika från mänsklig perception för vissa grön-till-blå-övergångar eftersom det mänskliga ögat är känsligare för grönt än blått.
CIEDE2000 (Delta E)
En perceptuell avståndsformel definierad av den internationella belysningskommissionen (CIE). Den konverterar färger till CIELAB-färgrymden först och tillämpar sedan korrektioner för ljusstyrka, kroma och nyans för att matcha mänsklig perception. Mer exakt för kantfall men betydligt mer komplex att beräkna. Nödvändig för industriell färgmatchning; överkurs för att hitta närmaste CSS-nyckelord.
Kodexempel
Hitta närmaste CSS-färgnamn programmatiskt med euklidiskt avstånd i RGB-rymden. Varje exempel tar en hex-sträng och returnerar det närmaste färgnamnet från CSS-specifikationen.
JavaScript
// Euclidean distance in RGB space
function nearestCssColor(hex) {
const r = parseInt(hex.slice(1, 3), 16)
const g = parseInt(hex.slice(3, 5), 16)
const b = parseInt(hex.slice(5, 7), 16)
let bestName = ''
let bestDist = Infinity
for (const [name, value] of Object.entries(cssColors)) {
const r2 = parseInt(value.slice(1, 3), 16)
const g2 = parseInt(value.slice(3, 5), 16)
const b2 = parseInt(value.slice(5, 7), 16)
const dist = Math.sqrt((r - r2) ** 2 + (g - g2) ** 2 + (b - b2) ** 2)
if (dist < bestDist) { bestDist = dist; bestName = name }
}
return bestName
}
nearestCssColor('#6366f1') // → "SlateBlue"
nearestCssColor('#1e293b') // → "DarkSlateGray"
package main
import (
"fmt"
"math"
"strconv"
)
type CSSColor struct {
Name string
R, G, B int
}
var colors = []CSSColor{
{"Crimson", 220, 20, 60},
{"SlateBlue", 106, 90, 205},
{"Tomato", 255, 99, 71},
// ... full list
}
func hexToRGB(hex string) (int, int, int) {
r, _ := strconv.ParseInt(hex[1:3], 16, 64)
g, _ := strconv.ParseInt(hex[3:5], 16, 64)
b, _ := strconv.ParseInt(hex[5:7], 16, 64)
return int(r), int(g), int(b)
}
func nearest(hex string) string {
r, g, b := hexToRGB(hex)
best := ""
bestDist := math.MaxFloat64
for _, c := range colors {
d := math.Sqrt(float64((r-c.R)*(r-c.R) + (g-c.G)*(g-c.G) + (b-c.B)*(b-c.B)))
if d < bestDist {
bestDist = d
best = c.Name
}
}
return best
}
func main() {
fmt.Println(nearest("#6366f1")) // → SlateBlue
}
Vanliga frågor
Hur många namngivna färger stöder CSS?
CSS Color Level 4 definierar 148 namngivna färgnyckelord. Detta inkluderar de 17 ursprungliga CSS 2.1-färgerna (som black, white, red, blue), de 140 X11-färgnamnen som lades till i CSS 3 och nyckelordet RebeccaPurple som lades till i CSS 4 som en hyllning till Eric Meyers dotter. Alla 148 namn är skiftlägesokänsliga och fungerar i alla moderna webbläsare.
Vad är skillnaden mellan en färgnamnsletare och en färgomvandlare?
En färgomvandlare transformerar en färg mellan format: hex till RGB, HSL till hex, RGB till CMYK. En färgnamnsletare gör något annat. Den söker igenom de 148 CSS-namngivna färgerna och returnerar den med kortast avstånd till din inmatning. Utmatningen är ett nyckelord (som Tomato eller SlateBlue), inte en numerisk representation.
Hur exakt är euklidiskt RGB-avstånd för färgmatchning?
Euklidiskt RGB-avstånd ger korrekta resultat för de flesta färguppslag. Det kan ge oväntade träffar i grönt-blått-intervallet eftersom mänskliga ögon uppfattar grönt mer intensivt än blått, men RGB-modellen behandlar alla tre kanaler lika. För webbutvecklingsuppgifter som att hitta närmaste CSS-nyckelord spelar skillnaden sällan roll i praktiken.
Kan jag använda CSS-färgnamn i JavaScript?
Ja. CSS.supports() API:t, canvas 2D-kontext och SVG fill/stroke-attribut accepterar alla namngivna färger. Du kan ange element.style.backgroundColor = 'Tomato' direkt. Namngivna färger fungerar också i CSS custom properties och med getComputedStyle()-metoden, men webbläsare returnerar det beräknade värdet i rgb()-format oavsett hur du angett det.
Varför har vissa färger konstiga namn som PapayaWhip eller BlanchedAlmond?
Dessa namn kommer från X11-färgdatabasen, som skapades för X Window System på Unix-arbetsstationer på 1980-talet. Namnen valdes av sina ursprungliga upphovsmän utan en formell namnkonvention. När CSS antog X11-färger i Level 3 behölls de befintliga namnen för bakåtkompatibilitet. Resultatet är en blandning av beskrivande namn (DarkRed), matrefereser (PapayaWhip, Chocolate, Salmon) och geografiska termer (Peru, Sienna).
Är RebeccaPurple en officiell CSS-färg?
Ja. RebeccaPurple (#663399) lades till i CSS Color Level 4-specifikationen 2014. Det föreslogs av CSS Working Group till minne av Rebecca Meyer, dotter till CSS-författaren Eric Meyer, som avled av hjärncancer vid sex års ålder. Färgen stöds i alla webbläsare som släpptes efter 2014.
Vad händer när min hex-inmatning är lika långt ifrån två namngivna färger?
När två namngivna färger har identiskt euklidiskt avstånd från inmatningen beror resultatet på iterationsordningen. Det här verktyget itererar igenom CSS-färglistan i alfabetisk ordning och behåller den första träffen. I praktiken är exakta oavgjorda lägen sällsynta eftersom de 148 namngivna färgerna är ojämnt fördelade i RGB-rymden. De flesta hex-inmatningar har en enda närmaste träff.