HEX-fargekoder forklart: slik fungerer #RRGGBB
En HEX-fargekode som #1e90ff består av tre par heksadesimale sifre: mengden rødt, grønt og blått lys, hver fra 00 (ingenting) til ff (fullt, 255). Legg til et fjerde par for opasitet: 80 betyr omtrent 50 %, ff betyr helt dekkende.
6 min lesetid
Slik fungerer en HEX-fargekode
Alle farger på en skjerm er blandet av rødt, grønt og blått lys. En HEX-kode skriver styrken på hvert lys som to tegn etter #-tegnet: først rødt, så grønt, så blått. Det er mønsteret #RRGGBB.
Tegnene er heksadesimale, en måte å telle på med 16 sifre: 0 til 9, deretter a (10), b (11), c (12), d (13), e (14) og f (15). Ett par dekker 256 verdier, fra 00 (0) til ff (255), nøyaktig samme spenn som i rgb().
For å gjøre et par om til et vanlig tall ganger du det første sifferet med 16 og legger til det andre. Nedenfor ser du #1e90ff, CSS-fargen dodgerblue, i fire formater, og deretter regnet ut par for par.
| Format | Verdi |
|---|---|
| HEX | |
| RGB | |
| HSL | |
| OKLCH |
| Par | Kanal | Utregning | Verdi |
|---|---|---|---|
| 1e | Rød | 1 × 16 + 14 | 30 |
| 90 | Grønn | 9 × 16 + 0 | 144 |
| ff | Blå | 15 × 16 + 15 | 255 |
#1e90ff er altså rgb(30, 144, 255): litt rødt, en god del grønt og fullt blått, som til sammen blir en klar himmelblå. Tre par med 256 verdier hver gir 16 777 216 mulige farger.
Kortform for HEX med tre og fire sifre
Når begge sifrene i hvert par er like, kan du skrive hvert par én gang. #ffcc00 blir #fc0, og nettleseren dobler hvert siffer tilbake. #1e90ff har ingen kortform, fordi 1e og 90 ikke er doble par.
Kortformen dekker bare 4 096 av de 16,7 millioner fargene. En variant med fire sifre legger til opasitet på samme måte, så #f008 betyr #ff000088.
| Kort | Full | Farge |
|---|---|---|
| #fff | #ffffff | Hvit |
| #000 | #000000 | Svart |
| #f00 | #ff0000 | Rød |
| #fc0 | #ffcc00 | Varm gul |
| #abc | #aabbcc | Gråblå |
| #f008 | #ff000088 | Rød med 53 % opasitet |
Opasitet i HEX: åttesifret HEX med alfa
En kode med åtte sifre legger til et fjerde par for alfa, altså opasiteten: #RRGGBBAA. 00 er helt gjennomsiktig og ff er helt dekkende. Alle nåværende nettlesere støtter det i CSS, sammen med kortformen #RGBA med fire sifre.
For å finne paret ganger du opasiteten med 255, runder av til et helt tall og gjør det om til HEX. 50 % gir 127,5, som rundes av til 128 og skrives som 80. Her er hele tabellen, brukt på #1e90ff.
| Opasitet | Alfa (0–255) | HEX-par | #1e90ff med alfa |
|---|---|---|---|
| 100% | 255 | ff | #1e90ffff |
| 95% | 242 | f2 | #1e90fff2 |
| 90% | 230 | e6 | #1e90ffe6 |
| 85% | 217 | d9 | #1e90ffd9 |
| 80% | 204 | cc | #1e90ffcc |
| 75% | 191 | bf | #1e90ffbf |
| 70% | 179 | b3 | #1e90ffb3 |
| 65% | 166 | a6 | #1e90ffa6 |
| 60% | 153 | 99 | #1e90ff99 |
| 55% | 140 | 8c | #1e90ff8c |
| 50% | 128 | 80 | #1e90ff80 |
| 45% | 115 | 73 | #1e90ff73 |
| 40% | 102 | 66 | #1e90ff66 |
| 35% | 89 | 59 | #1e90ff59 |
| 30% | 77 | 4d | #1e90ff4d |
| 25% | 64 | 40 | #1e90ff40 |
| 20% | 51 | 33 | #1e90ff33 |
| 15% | 38 | 26 | #1e90ff26 |
| 10% | 26 | 1a | #1e90ff1a |
| 5% | 13 | 0d | #1e90ff0d |
| 0% | 0 | 00 | #1e90ff00 |
CSS
.overlay {
background: #00000080;
}
.overlay-same {
background: rgb(0 0 0 / 50%);
}To ting å passe på. For det første er 80 lik 128 av 255, altså 50,2 % og ikke nøyaktig 50 %: alfa i HEX har bare 256 trinn, så de fleste runde prosenttall blir tilnærminger. For det andre setter Android alfa først. I en fargeressurs i Android betyr #801e90ff det samme som #1e90ff80 i CSS.
Slik leser du en HEX-kode med øynene
Du kan gjette en farge uten å regne om noe. Se på det første sifferet i hvert par, for det bærer nesten all informasjonen.
| CSS-navn | HEX | RGB | Slik leser du den |
|---|---|---|---|
| tomato | #ff6347 | 255, 99, 71 | Fullt rødt, litt grønt og blått: en varm, lys rød |
| gold | #ffd700 | 255, 215, 0 | Høyt rødt og grønt, ikke noe blått: gul |
| chocolate | #d2691e | 210, 105, 30 | Rødt leder, grønt på halvt, lite blått: oransjebrun |
| darkturquoise | #00ced1 | 0, 206, 209 | Høyt grønt og blått, ikke noe rødt: cyan |
| dodgerblue | #1e90ff | 30, 144, 255 | Blått leder, grønt i midten: himmelblå |
| mediumorchid | #ba55d3 | 186, 85, 211 | Høyt rødt og blått, lite grønt: lilla |
| teal | #008080 | 0, 128, 128 | Grønt og blått på halvt: mørk cyan |
| navy | #000080 | 0, 0, 128 | Bare blått, på halvt: mørkeblå |
| slategray | #708090 | 112, 128, 144 | Nesten likt, blått litt foran: blågrå |
- Det største første sifferet viser hvilket lys som dominerer. #d2691e har d i rødt, 6 i grønt og 1 i blått, så den er oransjebrun.
- To høye kanaler blandes: rødt og grønt gir gult, grønt og blått gir cyan, rødt og blått gir magenta eller lilla.
- Tre like par gir grått. #333333 er mørkegrå, #999999 er lysegrå. Nesten like par, som #708090, gir en dempet, gråaktig farge.
- Høye sifre totalt betyr en lys farge, lave sifre en mørk. Når alle tre parene er c0 eller høyere, er fargen blek. Når alle tre er 30 eller lavere, er den svært mørk.
- Grønt ser mye lysere ut enn blått ved samme tall. #00ff00 har OKLCH-lyshet 0,866, #0000ff bare 0,452.
Hvorfor #808080 ikke er mellomgrå
#808080 ligger nøyaktig midt på tallskalaen: 128 av 255 i hver kanal. Den ser likevel ikke ut som halvveis mellom svart og hvitt. OKLCH-lysheten er 0,600, så øyet oppfatter den som 60 % av veien mot hvitt.
HEX-verdier er allerede kodet med sRGB-kurven, som følger øyet omtrent, men ikke helt. #808080 sender ut rundt 21,6 % av lyset til hvitt, og perseptuelle modeller legger det visuelle midtpunktet lavere: OKLCH ved #636363, CIELAB ved #777777.
| Grå | Hva den er | OKLCH L | Kontrast mot hvitt | Kontrast mot svart |
|---|---|---|---|---|
| #808080 | Tallmessig midte, 128 | 0.600 | 3.95:1 | 5.32:1 |
| #777777 | Midten i CIELAB, L* 50 | 0.569 | 4.48:1 | 4.69:1 |
| #767676 | Lyseste grå med 4,5:1 mot hvitt | 0.566 | 4.54:1 | 4.62:1 |
| #636363 | Midten i OKLCH, L 0,5 | 0.500 | 6.01:1 | 3.50:1 |
Dette betyr noe for tekst. Grå #808080 på hvitt gir 3,95:1 og består ikke WCAG AA for brødtekst. #767676 er den lyseste gråtonen som klarer 4,5:1, og #777777, ett trinn lysere, kommer allerede til kort med 4,48:1.
Store eller små bokstaver, med eller uten #
HEX-koder skiller ikke mellom store og små bokstaver. #1E90FF, #1e90ff og #1E90ff er samme farge i CSS, SVG og designverktøy. Velg én skrivemåte og hold deg til den overalt, så et søk i koden finner alle forekomster. Små bokstaver er vanligst i CSS.
#-tegnet er en del av CSS-syntaksen, ikke av fargen. Figma og mange designverktøy viser koden uten det, og programmeringsspråk skriver den ofte som et tall med prefikset 0x, som i Flutter, der Color(0xFF1E90FF) begynner med alfaparet.
Slik finner du HEX-koden til en farge på skjermen
Bruk en pipette: et verktøy som leser fargen under markøren og viser koden. De er gratis, og de fleste har du allerede.
- Chrome og Edge: åpne DevTools med F12, klikk på en fargerute i Styles-panelet og bruk pipetteikonet for å hente en farge fra siden.
- PickShade: fargevelgeren på forsiden har en pipetteknapp i Chrome og Edge som henter farger fra hvor som helst på skjermen.
- Windows: installer Microsoft PowerToys og trykk Win + Shift + C for å åpne Color Picker.
- macOS: åpne Digital fargemåler under Programmer, Verktøy. Sett den til sRGB, og velg deretter Vis, Vis verdier, Som heksadesimal.
- Figma, Photoshop og de fleste designprogrammer: trykk I for pipetten.
- I et foto eller en skjermdump: åpne bildet i verktøyet for å hente farger fra bilder og klikk på en hvilken som helst piksel. Bildet blir på enheten din.
En hentet verdi kan avvike noen enheter fra originalen, fordi skjermer bruker fargeprofiler og bilder komprimeres. Når du trenger den nøyaktige verdien, kopierer du den fra designfilen eller CSS-en, ikke fra en skjermdump.
Spørsmål og svar
Hva er en HEX-fargekode?
En HEX-fargekode er en sekssifret kode som #1e90ff som beskriver en farge ut fra hvor mye rødt, grønt og blått lys den inneholder. Hvert par heksadesimale sifre går fra 00 (0) til ff (255), så #1e90ff er rgb(30, 144, 255).
Hvordan legger jeg til opasitet på en HEX-farge?
Legg til et fjerde sifferpar på slutten: #RRGGBBAA. Gang opasiteten med 255, rund av og gjør om til HEX, så 50 % blir 80, 25 % blir 40 og 75 % blir bf. #1e90ff80 er for eksempel dodgerblue med omtrent 50 % opasitet.
Hva er 50 % opasitet i HEX?
50 % opasitet i HEX er 80, som i #00000080 for halvgjennomsiktig svart. 80 tilsvarer 128 av 255, altså 50,2 %, fordi alfa i HEX har 256 trinn og nøyaktig 50 % faller mellom 7f og 80.
Hva er forskjellen på HEX og RGB?
Fargen er den samme, bare skrivemåten er forskjellig. HEX skriver verdiene for rødt, grønt og blått som par i 16-tallssystemet, rgb() skriver dem som desimaltall fra 0 til 255, så #ff6347 og rgb(255, 99, 71) er den samme tomatrøde fargen.
Skiller HEX-fargekoder mellom store og små bokstaver?
Nei. #FF6347, #ff6347 og #Ff6347 er samme farge i CSS, HTML, SVG og designverktøy. De fleste CSS-kodebaser bruker små bokstaver, men alle skrivemåter fungerer så lenge du er konsekvent.
Hva er HEX-koden for mellomgrå?
#808080 er den tallmessige midten, men den ser lysere ut enn halvveis, med OKLCH-lyshet 0,600. En grå som ser ut som midt mellom svart og hvitt, ligger mellom #636363 (OKLCH L 0,5) og #777777 (CIELAB L* 50).