Skip to content

HTML Color Shades

Understanding how colors are mixed and represented digitally is key to effectively using color in web design.

Digital displays create colors using the RGB (Red, Green, Blue) additive color model. By combining different intensities of red, green, and blue light, a vast spectrum of colors can be produced.

  • Each component (R, G, B) typically has 256 levels of intensity (0 to 255).
  • 0 means no light for that component.
  • 255 (or FF in HEX) means maximum intensity for that component.

Combining these gives 256 x 256 x 256 = 16,777,216 possible colors.

Examples:

  • rgb(255, 0, 0) or #FF0000: Pure Red (Max Red, no Green or Blue).
  • rgb(0, 255, 0) or #00FF00: Pure Green (Max Green, no Red or Blue).
  • rgb(0, 0, 255) or #0000FF: Pure Blue (Max Blue, no Red or Green).
  • rgb(255, 255, 255) or #FFFFFF: White (Max intensity for all components).
  • rgb(0, 0, 0) or #000000: Black (No intensity for any component).

Modern displays are capable of showing millions of colors (often referred to as 24-bit or “true color”), making the full RGB spectrum available.

Grays:

Shades of gray are created when the Red, Green, and Blue components have equal intensity.

ShadeHEXRGB
Black#000000rgb(0, 0, 0)
Dark Gray#404040rgb(64, 64, 64)
Gray#808080rgb(128, 128, 128)
Silver#C0C0C0rgb(192, 192, 192)
Light Gray#D3D3D3rgb(211, 211, 211)
White#FFFFFFrgb(255, 255, 255)

Tints, Tones, and Shades:

You can create variations of a base color:

  • Tint: Adding white to a color (makes it lighter). In HSL, increase Lightness.
  • Shade: Adding black to a color (makes it darker). In HSL, decrease Lightness.
  • Tone: Adding gray to a color (makes it less saturated). In HSL, decrease Saturation.

The HSL color model (hsl(hue, saturation, lightness)) is particularly useful for programmatically generating tints, shades, and tones by adjusting the lightness and saturation values while keeping the hue constant.

Example using HSL for variations of blue (hsl(240, 100%, 50%)):

/* Base Blue */
background-color: hsl(240, 100%, 50%);
/* Tint (Lighter) */
background-color: hsl(240, 100%, 75%);
/* Shade (Darker) */
background-color: hsl(240, 100%, 25%);
/* Tone (Less Saturated) */
background-color: hsl(240, 50%, 50%);

In the early days of the web, many computers could only display a limited palette of 256 colors. The “Web Safe Color” palette defined 216 specific colors that were expected to render consistently across different browsers and operating systems running on these limited displays.

These colors were based on specific RGB values using only 00, 33, 66, 99, CC, and FF (hexadecimal) for each component.

Relevance Today: The concept of web-safe colors is largely obsolete. Modern computers and devices can display millions of colors, and browsers handle color management effectively.

You should not limit your color choices to the old web-safe palette. Focus on choosing colors that fit your design, meet accessibility contrast requirements, and enhance user experience.

When choosing colors, always consider accessibility. Ensure sufficient contrast between text color and background color to make content readable for everyone, including users with visual impairments.

Use online contrast checking tools to verify that your color combinations meet the Web Content Accessibility Guidelines (WCAG) standards (typically AA or AAA levels).