Recommended Free Tools
Windows Errors? Fix Them Before They Spread
Free scan · no reinstall
Outdated Drivers Are Slowing You Down
Free scan · exact hardware match
PC Slower Than It Used to Be?
Free scan · Windows 10 & 11
ThatPainter is reader-supported. When you buy through links on our site, we may earn an affiliate commission. Learn More
Short answer: The historical web-safe palette contains 216 colors made from the hexadecimal channel levels 00, 33, 66, 99, CC, and FF. Modern browsers and displays are not generally restricted to those colors. For practical web design, CSS named colors and modern hexadecimal, RGB, and HSL notation are more useful.
Web-safe colors versus CSS named colors
The term HTML colors is largely legacy terminology. Color values are now primarily written in CSS, although they can appear in inline HTML styles. CSS supports named keywords, six-digit hexadecimal values, rgb(), hsl(), and other color functions. CSS color keywords resolve to colors in the sRGB color space.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →The original web-safe idea came from older computers and displays that used limited, inconsistent palettes. Designers chose six evenly spaced hexadecimal levels for each red, green, and blue channel:
#1 Best Overall
- SPECIFICATIONS: 24 patch color reference target designed for photo and video workflows, supports white balance, exposure evaluation, and color grading, 8 x 11.5 inch chart size, engineered for consistent color reproduction under varied lighting, ideal for Camera profiling and calibration use.
- ACCURATE COLOR CONTROL: 24 scientifically formulated color patches provide a consistent reference for correcting color casts and maintaining true to life results, helping photographers and filmmakers achieve dependable accuracy across different lighting conditions and camera systems.
- WHITE BALANCE REFERENCE: Capture the target under the same light as your subject to set neutral balance and exposure with confidence, reducing trial and error corrections and improving consistency across a full shoot or production day.
- PROFILE CREATION READY: Supports creation of custom DNG and ICC camera profiles when used with Calibrite PROFILER software, helping streamline editing workflows and maintain predictable color rendering for specific camera, lens, and lighting combinations.
- WORKFLOW EFFICIENCY: Provides a reliable point of reference for global corrections and color grading decisions, saving time in post production while improving consistency for multi camera shoots, commercial work, and color critical deliverables.
00, 33, 66, 99, CC, FF
There are 6 × 6 × 6 = 216 possible combinations. A color is marked Yes in the table only when all three RGB channels use one of those six levels. Many familiar CSS names—including tomato, cornflowerblue, and rebeccapurple—are not strict web-safe colors.
How to read the color values
- Hex: A six-digit sRGB value in the form
#RRGGBB. Each pair represents red, green, or blue from00toFF. - RGB: The same color expressed as three decimal channel values from 0 to 255.
- HSL: The same sRGB color expressed as hue, saturation, and lightness. Hue is measured in degrees from 0 to 360; saturation and lightness are percentages.
The HSL values below are calculated from the RGB values and rounded to the nearest whole degree or percentage. Because of that rounding, hex or integer RGB is the best copy-and-paste choice when exact color reproduction matters.
100 CSS colors with hex, RGB, HSL, and web-safe status
| Color name | Hex code | RGB | HSL | Strict web-safe? | Notes |
|---|---|---|---|---|---|
| aliceblue | #f0f8ff |
rgb(240, 248, 255) |
hsl(208, 100%, 97%) |
No | Very pale blue |
| antiquewhite | #faebd7 |
rgb(250, 235, 215) |
hsl(34, 78%, 91%) |
No | Warm off-white |
| aqua | #00ffff |
rgb(0, 255, 255) |
hsl(180, 100%, 50%) |
Yes | Alias of cyan |
| aquamarine | #7fffd4 |
rgb(127, 255, 212) |
hsl(160, 100%, 75%) |
No | Light green-blue |
| azure | #f0ffff |
rgb(240, 255, 255) |
hsl(180, 100%, 97%) |
No | Very pale cyan |
| beige | #f5f5dc |
rgb(245, 245, 220) |
hsl(60, 56%, 91%) |
No | Muted pale yellow |
| bisque | #ffe4c4 |
rgb(255, 228, 196) |
hsl(33, 100%, 88%) |
No | Pale orange |
| black | #000000 |
rgb(0, 0, 0) |
hsl(0, 0%, 0%) |
Yes | Lowest lightness |
| blanchedalmond | #ffebcd |
rgb(255, 235, 205) |
hsl(36, 100%, 90%) |
No | Soft cream |
| blue | #0000ff |
rgb(0, 0, 255) |
hsl(240, 100%, 50%) |
Yes | Basic CSS color |
| blueviolet | #8a2be2 |
rgb(138, 43, 226) |
hsl(271, 76%, 53%) |
No | Violet-blue |
| brown | #a52a2a |
rgb(165, 42, 42) |
hsl(0, 59%, 41%) |
No | Dark red-brown |
| burlywood | #deb887 |
rgb(222, 184, 135) |
hsl(34, 57%, 70%) |
No | Muted tan |
| cadetblue | #5f9ea0 |
rgb(95, 158, 160) |
hsl(182, 25%, 50%) |
No | Muted blue-green |
| chartreuse | #7fff00 |
rgb(127, 255, 0) |
hsl(90, 100%, 50%) |
No | Bright yellow-green |
| chocolate | #d2691e |
rgb(210, 105, 30) |
hsl(25, 75%, 47%) |
No | Orange-brown |
| coral | #ff7f50 |
rgb(255, 127, 80) |
hsl(16, 100%, 66%) |
No | Warm pink-orange |
| cornflowerblue | #6495ed |
rgb(100, 149, 237) |
hsl(219, 79%, 66%) |
No | Medium light blue |
| cornsilk | #fff8dc |
rgb(255, 248, 220) |
hsl(48, 100%, 93%) |
No | Pale yellow-cream |
| crimson | #dc143c |
rgb(220, 20, 60) |
hsl(348, 83%, 47%) |
No | Strong red-pink |
| cyan | #00ffff |
rgb(0, 255, 255) |
hsl(180, 100%, 50%) |
Yes | Alias of aqua |
| darkblue | #00008b |
rgb(0, 0, 139) |
hsl(240, 100%, 27%) |
No | Deep blue |
| darkcyan | #008b8b |
rgb(0, 139, 139) |
hsl(180, 100%, 27%) |
No | Deep cyan |
| darkgoldenrod | #b8860b |
rgb(184, 134, 11) |
hsl(43, 89%, 38%) |
No | Dark gold |
| darkgray | #a9a9a9 |
rgb(169, 169, 169) |
hsl(0, 0%, 66%) |
No | Alias family with darkgrey |
| darkgreen | #006400 |
rgb(0, 100, 0) |
hsl(120, 100%, 20%) |
No | Deep green |
| darkgrey | #a9a9a9 |
rgb(169, 169, 169) |
hsl(0, 0%, 66%) |
No | Alias of darkgray |
| darkkhaki | #bdb76b |
rgb(189, 183, 107) |
hsl(56, 38%, 58%) |
No | Muted yellow-green |
| darkmagenta | #8b008b |
rgb(139, 0, 139) |
hsl(300, 100%, 27%) |
No | Deep magenta |
| darkolivegreen | #556b2f |
rgb(85, 107, 47) |
hsl(82, 39%, 30%) |
No | Earthy green |
| darkorange | #ff8c00 |
rgb(255, 140, 0) |
hsl(33, 100%, 50%) |
No | Vivid orange |
| darkorchid | #9932cc |
rgb(153, 50, 204) |
hsl(280, 61%, 50%) |
No | Dark purple |
| darkred | #8b0000 |
rgb(139, 0, 0) |
hsl(0, 100%, 27%) |
No | Deep red |
| darksalmon | #e9967a |
rgb(233, 150, 122) |
hsl(15, 72%, 70%) |
No | Muted salmon |
| darkseagreen | #8fbc8f |
rgb(143, 188, 143) |
hsl(120, 25%, 65%) |
No | Soft green |
| darkslateblue | #483d8b |
rgb(72, 61, 139) |
hsl(248, 39%, 39%) |
No | Blue-purple |
| darkslategray | #2f4f4f |
rgb(47, 79, 79) |
hsl(180, 25%, 25%) |
No | Alias family with darkslategrey |
| darkslategrey | #2f4f4f |
rgb(47, 79, 79) |
hsl(180, 25%, 25%) |
No | Alias of darkslategray |
| darkturquoise | #00ced1 |
rgb(0, 206, 209) |
hsl(181, 100%, 41%) |
No | Bright blue-green |
| darkviolet | #9400d3 |
rgb(148, 0, 211) |
hsl(282, 100%, 41%) |
No | Strong violet |
| deeppink | #ff1493 |
rgb(255, 20, 147) |
hsl(328, 100%, 54%) |
No | Vivid pink |
| deepskyblue | #00bfff |
rgb(0, 191, 255) |
hsl(195, 100%, 50%) |
No | Bright sky blue |
| dimgray | #696969 |
rgb(105, 105, 105) |
hsl(0, 0%, 41%) |
No | Alias family with dimgrey |
| dimgrey | #696969 |
rgb(105, 105, 105) |
hsl(0, 0%, 41%) |
No | Alias of dimgray |
| dodgerblue | #1e90ff |
rgb(30, 144, 255) |
hsl(210, 100%, 56%) |
No | Bright medium blue |
| firebrick | #b22222 |
rgb(178, 34, 34) |
hsl(0, 68%, 42%) |
No | Brick red |
| floralwhite | #fffaf0 |
rgb(255, 250, 240) |
hsl(40, 100%, 97%) |
No | Warm white |
| forestgreen | #228b22 |
rgb(34, 139, 34) |
hsl(120, 61%, 34%) |
No | Medium dark green |
| fuchsia | #ff00ff |
rgb(255, 0, 255) |
hsl(300, 100%, 50%) |
Yes | Alias of magenta |
| gainsboro | #dcdcdc |
rgb(220, 220, 220) |
hsl(0, 0%, 86%) |
No | Light gray |
| ghostwhite | #f8f8ff |
rgb(248, 248, 255) |
hsl(240, 100%, 99%) |
No | Cool off-white |
| gold | #ffd700 |
rgb(255, 215, 0) |
hsl(51, 100%, 50%) |
No | Bright yellow-gold |
| goldenrod | #daa520 |
rgb(218, 165, 32) |
hsl(43, 74%, 53%) |
No | Muted gold |
| gray | #808080 |
rgb(128, 128, 128) |
hsl(0, 0%, 50%) |
No | Alias family with grey |
| green | #008000 |
rgb(0, 128, 0) |
hsl(120, 100%, 25%) |
No | CSS green is darker than lime |
| greenyellow | #adff2f |
rgb(173, 255, 47) |
hsl(84, 100%, 59%) |
No | Bright yellow-green |
| grey | #808080 |
rgb(128, 128, 128) |
hsl(0, 0%, 50%) |
No | Alias of gray |
| honeydew | #f0fff0 |
rgb(240, 255, 240) |
hsl(120, 100%, 97%) |
No | Very pale green |
| hotpink | #ff69b4 |
rgb(255, 105, 180) |
hsl(330, 100%, 71%) |
No | Bright pink |
| indianred | #cd5c5c |
rgb(205, 92, 92) |
hsl(0, 53%, 58%) |
No | Muted red |
| indigo | #4b0082 |
rgb(75, 0, 130) |
hsl(275, 100%, 26%) |
No | Deep blue-violet |
| ivory | #fffff0 |
rgb(255, 255, 240) |
hsl(60, 100%, 97%) |
No | Warm near-white |
| khaki | #f0e68c |
rgb(240, 230, 140) |
hsl(54, 77%, 74%) |
No | Pale yellow-brown |
| lavender | #e6e6fa |
rgb(230, 230, 250) |
hsl(240, 67%, 94%) |
No | Pale purple-blue |
| lavenderblush | #fff0f5 |
rgb(255, 240, 245) |
hsl(340, 100%, 97%) |
No | Very pale pink |
| lawngreen | #7cfc00 |
rgb(124, 252, 0) |
hsl(90, 100%, 49%) |
No | Bright green |
| lemonchiffon | #fffacd |
rgb(255, 250, 205) |
hsl(54, 100%, 90%) |
No | Light lemon yellow |
| lightblue | #add8e6 |
rgb(173, 216, 230) |
hsl(195, 53%, 79%) |
No | Soft blue |
| lightcoral | #f08080 |
rgb(240, 128, 128) |
hsl(0, 79%, 72%) |
No | Light red |
| lightcyan | #e0ffff |
rgb(224, 255, 255) |
hsl(180, 100%, 94%) |
No | Pale cyan |
| lightgoldenrodyellow | #fafad2 |
rgb(250, 250, 210) |
hsl(60, 80%, 90%) |
No | Light muted yellow |
| lightgray | #d3d3d3 |
rgb(211, 211, 211) |
hsl(0, 0%, 83%) |
No | Alias family with lightgrey |
| lightgreen | #90ee90 |
rgb(144, 238, 144) |
hsl(120, 73%, 75%) |
No | Soft bright green |
| lightgrey | #d3d3d3 |
rgb(211, 211, 211) |
hsl(0, 0%, 83%) |
No | Alias of lightgray |
| lightpink | #ffb6c1 |
rgb(255, 182, 193) |
hsl(351, 100%, 86%) |
No | Pale pink |
| lightsalmon | #ffa07a |
rgb(255, 160, 122) |
hsl(17, 100%, 74%) |
No | Light orange-pink |
| lightseagreen | #20b2aa |
rgb(32, 178, 170) |
hsl(177, 70%, 41%) |
No | Medium teal |
| lightskyblue | #87cefa |
rgb(135, 206, 250) |
hsl(203, 92%, 75%) |
No | Light sky blue |
| lightslategray | #778899 |
rgb(119, 136, 153) |
hsl(210, 14%, 53%) |
No | Alias family with lightslategrey |
| lightslategrey | #778899 |
rgb(119, 136, 153) |
hsl(210, 14%, 53%) |
No | Alias of lightslategray |
| lightsteelblue | #b0c4de |
rgb(176, 196, 222) |
hsl(214, 41%, 78%) |
No | Soft gray-blue |
| lightyellow | #ffffe0 |
rgb(255, 255, 224) |
hsl(60, 100%, 94%) |
No | Pale yellow |
| lime | #00ff00 |
rgb(0, 255, 0) |
hsl(120, 100%, 50%) |
Yes | Bright basic green |
| limegreen | #32cd32 |
rgb(50, 205, 50) |
hsl(120, 61%, 50%) |
No | Medium green |
| linen | #faf0e6 |
rgb(250, 240, 230) |
hsl(30, 67%, 94%) |
No | Warm pale neutral |
| magenta | #ff00ff |
rgb(255, 0, 255) |
hsl(300, 100%, 50%) |
Yes | Alias of fuchsia |
| maroon | #800000 |
rgb(128, 0, 0) |
hsl(0, 100%, 25%) |
No | CSS maroon is dark red |
| mediumaquamarine | #66cdaa |
rgb(102, 205, 170) |
hsl(160, 51%, 60%) |
No | Medium green-blue |
| mediumblue | #0000cd |
rgb(0, 0, 205) |
hsl(240, 100%, 40%) |
No | Dark vivid blue |
| mediumorchid | #ba55d3 |
rgb(186, 85, 211) |
hsl(288, 59%, 58%) |
No | Medium purple |
| mediumpurple | #9370db |
rgb(147, 112, 219) |
hsl(260, 60%, 65%) |
No | Muted purple |
| mediumseagreen | #3cb371 |
rgb(60, 179, 113) |
hsl(147, 50%, 47%) |
No | Green-teal |
| mediumslateblue | #7b68ee |
rgb(123, 104, 238) |
hsl(249, 80%, 67%) |
No | Bright purple-blue |
| mediumspringgreen | #00fa9a |
rgb(0, 250, 154) |
hsl(157, 100%, 49%) |
No | Vivid green-cyan |
| mediumturquoise | #48d1cc |
rgb(72, 209, 204) |
hsl(178, 60%, 55%) |
No | Medium turquoise |
| mediumvioletred | #c71585 |
rgb(199, 21, 133) |
hsl(322, 81%, 43%) |
No | Deep pink-purple |
| midnightblue | #191970 |
rgb(25, 25, 112) |
hsl(240, 64%, 27%) |
No | Very dark blue |
| mintcream | #f5fffa |
rgb(245, 255, 250) |
hsl(150, 100%, 98%) |
No | Very pale green-white |
| mistyrose | #ffe4e1 |
rgb(255, 228, 225) |
hsl(6, 100%, 94%) |
No | Very pale red |
| moccasin | #ffe4b5 |
rgb(255, 228, 181) |
hsl(38, 100%, 85%) |
No | Pale orange-yellow |
How to use these colors in CSS
A named color is the shortest option when the keyword is clear and supported by the CSS standard:
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11.card {
background-color: tomato;
}
The equivalent sRGB hexadecimal and RGB declarations are:
.card {
background-color: #ff6347;
background-color: rgb(255 99 71);
}
Using HSL can make it easier to reason about hue, saturation, and lightness:
.card {
background-color: hsl(9 100% 64%);
}
These examples describe the same intended color. For production code, use one final declaration rather than stacking equivalent values unless you are deliberately providing a fallback. Hex and integer RGB preserve the table’s values exactly; rounded HSL may differ by a small amount when converted back.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.CSS color names and aliases
CSS color keywords are ASCII case-insensitive, so Tomato and tomato are interpreted the same way. Lowercase is preferable in documentation and source code for consistency.
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #2
- SUPERIOR ACCURACY - Ensures precise color calibration with professional-grade chips, delivering consistent and reliable results for video production.
- ENHANCED IMAGE QUALITY - Optimizes video quality using 16:9 aspect ratio charts, allowing for detailed adjustments and accurate color reproduction.
- INCREASED DURABILITY - Constructed with robust materials, the Digital Kolor Pro charts are designed for long-term use, resisting wear and tear in demanding environments.
- WIDE COMPATIBILITY - Versatile calibration tool compatible with various cameras and editing software, making it an essential asset for diverse video workflows.
- SIMPLE AND EASY TO USE - Streamlines the color correction process with intuitive chart layouts, enabling quick and efficient calibration for both beginners and experts.
Some keywords are aliases and therefore resolve to exactly the same sRGB value:
aquaandcyanare identical.fuchsiaandmagentaare identical.grayandgreyare identical.darkgrayanddarkgreyare identical.lightgrayandlightgreyare identical.dimgrayanddimgreyare identical.darkslategrayanddarkslategreyare identical.lightslategrayandlightslategreyare identical.
Do not assume that a name is a precise description of how people perceive the color. CSS keywords are a convenient historical vocabulary, not an evenly spaced or perceptually uniform color system.
Are web-safe colors still necessary?
Usually, no. A modern responsive website does not need to limit its palette to the historical 216 colors for ordinary browser compatibility. Current browsers and display hardware support 24-bit sRGB color and far more than 216 displayable colors.
The strict palette can still be useful when you are maintaining a legacy interface, matching an old design specification, teaching the history of web design, or deliberately choosing from a small, predictable palette. If you use it for a current project, treat it as a design constraint—not a browser requirement.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Accessibility: test combinations, not color names
A color reference table cannot tell you whether a text and background pairing is accessible. Contrast depends on the actual foreground and background colors, text size, weight, and the applicable accessibility requirements. Pale colors may disappear on white, while saturated colors can be difficult for some readers to distinguish.
Check every important text/background combination with a current contrast-testing tool. Also make sure that meaning is not conveyed by color alone: add labels, icons, patterns, or text where necessary. Consider color-vision deficiencies when designing charts, buttons, status indicators, and painting or art portfolios.
For a desk-side supplement to an online lookup table, readers who work away from their screen may prefer an HTML and CSS reference chart. Verify the current edition and availability before purchasing; printed colors can also vary with paper, ink, lighting, and viewing conditions, so a physical chart should not be treated as an exact substitute for a calibrated display.
How HSL values are calculated
Each RGB channel is first divided by 255 to produce a value between 0 and 1. Let max be the largest channel, min the smallest, and delta = max - min.
Rank #3
lightness = (max + min) / 2- If
deltais zero, saturation is zero and hue is conventionally zero. - Otherwise, saturation is calculated from
delta / (1 - |2L - 1|). - Hue is determined by the channel with the maximum value, converted to degrees, and normalized to 0–360.
The table rounds hue to a whole degree and saturation and lightness to whole percentages. Different software may show decimal values, so small differences between this reference and a color-picker interface are normal.
Frequently Asked Questions
Are web-safe colors required for modern websites?
No. The historical 216-color palette was designed for older limited-palette displays. Modern browsers and displays generally support 24-bit sRGB color, so current sites can use the full CSS color system.
Are HTML color names and CSS color names the same?
The terminology overlaps, but CSS is the modern standard for specifying web colors. The named keywords are CSS color keywords and can be used in stylesheets or inline HTML styles.
How do I know whether a color is strictly web-safe?
Convert the color to six-digit RGB hexadecimal and check every channel. All three channels must be one of 00, 33, 66, 99, CC, or FF. If even one channel uses another value, it is not in the historical 216-color palette.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteIs HSL more accurate than RGB?
No. HSL and RGB are different representations of the same sRGB color. HSL can be convenient for adjusting hue, saturation, and lightness, while hexadecimal or integer RGB is preferable when exact copy-and-paste reproduction matters.
The Bottom Line
Use the table for practical CSS color lookup, but keep the terminology straight: the historical “web-safe” set has 216 members, while CSS named colors are a broader standardized vocabulary. For modern work, choose the color that suits the design, verify contrast, and use the hex or RGB value when exact reproduction is important.




