Colour management is a pretty arcane subject to most people, even if it's relevant to their work. I recently spent a few days trying to understand it, and encountered two challenges. First, I didn't find any really clear explanation of the concepts involved. Some are thorough but difficult to follow. Others give practical advice without elucidating the fundamentals. The second problem is that there's conflicting advice about best practices when designing for the web.
I’d like to take on the challenge of addressing both of these issues. I will first explain some of the basic concepts behind colour management, using illustrations that hopefully make it easier to understand. I will then talk about practical implications for web-oriented design.
How it works
Colours can be described in different ways, for example as a mix of red, green and blue light, or in terms of their hue, saturation and lightness. In each of these colour models, you can think of the dimensions as forming a "space". One such colour space is called CIE xyY, and I'll use it for my illustrations here. It contains all the colours visible to the average human eye, and has the convenient property that, although it's three-dimensional, you can look at it "from above" and get a nice, two-dimensional map of chromaticities at maximum brightness:
When you're working on a particular display, it'll only be able to show a subset of all visible colours. This range is called its gamut and will have a triangular footprint in the CIE xyY space (as will any other RGB space):
If our display's colour profile is perfectly calibrated, this means that this sub-space defined by it corresponds exactly to the range of colours we can really see on the display.