#1E90FF means one exact blue to every browser on earth, and the six characters are not a code to memorize but a sentence to read: two characters of red, two of green, two of blue. Learning to read it takes five minutes and pays forever, because hex colors are how design tools, stylesheets and brand guides talk to each other. This guide teaches the reading, with our free hex to RGB converter and RGB to hex converter covering both directions of the trip.
In this guide
The anatomy: three bytes in disguise
A screen pixel mixes red, green and blue light, each at an intensity from 0 to 255, one byte per channel. A hex color writes those three bytes as base-16 pairs: #1E90FF splits into 1E (30 of red), 90 (144 of green), FF (255 of blue), a blue leaning slightly green. Two hex digits per channel is no accident: one hex digit is four bits, so a pair is exactly one byte, the same compactness that makes hex the costume of choice everywhere bytes need reading, as the number systems pillar covers. Three channels of 256 levels give 16,777,216 colors, every one of them six characters long.
Reading colors by eye
Fluency is pattern recognition on the pairs. The big pair dominates: #FF6347 is red-heavy (FF first), #228B22 is green-led, #1E90FF blue-led. Equal pairs make gray: #808080 is the exact middle gray, #F5F5F5 a near-white, #333333 a popular dark text color, and any drift between the pairs tints the gray warm or cool. The corners anchor everything: #FFFFFF white, #000000 black, #FF0000, #00FF00 and #0000FF the three pure channels. With those patterns, a glance at a stylesheet reads as “dark warm gray, saturated blue, near-white”, which is most of what code review of colors requires; the precise translation, when needed, is one paste into the converter.
Shorthand, and the alpha channel
Two extensions complete the grammar. Three-digit shorthand doubles each digit: #F00 expands to #FF0000, #abc to #AABBCC, usable exactly when both digits of every pair match, which is why it suits quick grays and primaries and nothing subtle. Eight-digit hex appends an alpha byte: #1E90FF80 is the same blue at hex 80, 128 of 255, very close to half opacity. The alpha byte reads like any other channel, FF opaque, 00 invisible, and its arithmetic (what is 35% as a byte?) is precisely the kind of conversion the RGB to hex tool spares you from doing in your head.
Hex, rgb() and HSL: same color, three dialects
CSS accepts the identical color as #1E90FF, rgb(30 144 255), or an HSL triple, and the choice is ergonomic, not technical. Hex is compact and universal in design handoffs. The rgb() form shines when a stylesheet computes channels or when alpha reads better as a fraction: rgb(30 144 255 / 0.5). HSL speaks human: hue around the wheel, then saturation and lightness, so “a bit darker” is one number nudged instead of three bytes recomputed. Moving between all three is the color converter‘s whole job, and the broader picture of choosing, sampling and combining colors lives in the color tools hub.
The working habits
Three habits turn the reading skill into better interfaces. Sample, never squint: when a color exists only as pixels, in a logo or screenshot, the color picker reads its exact value, which beats every by-eye approximation. Name the repeats: the third appearance of #1E90FF in a stylesheet is a CSS custom property asking to exist, and renaming three bytes to --brand-blue is the cheapest refactor in front-end work. Check the contrast: a color pair that looks fine on a designer’s monitor can fail readers with low vision, and the contrast checker scores any foreground-background pair against the accessibility thresholds before the complaint arrives. Beautiful and readable are both spelled in the same six characters.
Frequently asked questions
Are hex colors case-sensitive?
No: #1e90ff and #1E90FF are identical everywhere. Teams pick one convention for consistency in code review, and lowercase has quietly become the more common choice in modern stylesheets.
What were “web-safe” colors, and do they still matter?
A 216-color palette from the era of 256-color displays, built from channel values in steps of 51 (hex 00, 33, 66, 99, CC, FF). Modern screens display the full 16.7 million, so the constraint is history, though the era’s habit of round hex values survives in many palettes.
Why 255 and not a round number like 100?
Because the unit is one byte, eight bits, whose 256 patterns run 0 to 255. The “round” numbers of color are powers of two in disguise, the same reason image dimensions and file sizes keep landing on 128, 256 and 512.
Do named colors like “dodgerblue” map to hex values?
Exactly: every CSS named color is a fixed hex value, dodgerblue being #1E90FF, the blue running through this guide. The names are friendly for quick experiments; production stylesheets prefer explicit values or custom properties, which say precisely what they mean.