(Summary: By sending an email to [log in to unmask], you can help
persuade the CSS group to include a more human-oriented notation for
colours than the RGB #FFFFFF style.)
You may already be aware of CSS (Cascading Style Sheets) a new part of
the World Wide Web that allow you to define the presentation of HTML
pages separate from the structure of the document. The new versions of
Netscape Navigator and Microsoft Internet Explorer already support
level 1 of CSS. (See http://www.w3.org/Style/css/). A working draft
for level 2 has just been released for public comment.
One part of CSS is the ability to assign colours to elements (like
backgrounds, font colours, and so on). Up to now HTML has only allowed
you to specify colours using a numeric RGB notation like #FF35EF, and
a limited set of names, and CSS has taken this notation over for the
specification of colours.
I am on the CSS committee, representing the HCI community, and my
opinion is that RGB notation is a poor notation from a usability point
of view: when confronted with a colour in RGB notation, it is hard to
determine what colour it is, and if you want to encode a colour, it is
next to impossible to do it without the use of a tool that does it for
I have been trying for some time to persuade the CSS committee to
accept a more human-oriented notation. Unfortunately the committee
consists for a large part of technologists, who don't see the need for
another notation when you've already got RGB, of implementers who
don't want any more work, of vendors who want to sell users tools to
select colours, and of people who say that they haven't heard any
demand from users for something easier to use (all these reasons were
used in meetings).
My latest, and last-ditch attempt (since CSS has gone public and will
be offered for ratification soon) is for HSL notation. While not
perfect, it goes a long way to making colours more easily expressible,
while not increasing the work greatly for implementers.
You can see the whole proposal at
http://www.cwi.nl/~steven/css/hsl.html, with examples of colours and
their encodings, but in a nutshell, HSL looks like this:
* HSL encoded colours consist of three numbers: Hue, Saturation, and
* Hue is an angle from 0 to 360 degrees. It represents a colour from
the colour circle, with red=0 (=360 degrees), green=120 degrees,
blue=240 degrees. So for instance, since magenta is halfway between red
and blue, it is 300 degrees.
* Saturation is 100% for a pure colour, down to 0% for a shade of grey
* Lightness goes from 0% for no lightness (i.e. black), to 100% for
full lightness (white), with 50% being the 'normal' value for a
So for instance,
hsl(0, 100, 50) is red;
hsl(0, 100, 25) is dark red,
hsl(0, 50, 50) is a pastel red,
hsl(0, 50, 25) is a dark pastel red, and
hsl(240, 50, 25) is a dark pastel blue.
For the reasons mentioned above, the CSS committee have decided not to
include HSL colour specification, but have minuted that they will
publish the fact that it is an option, and if enough people ask for
it, it will be put in.
This is why I am writing. If you think that CSS should include HSL
(and note that this is now the only option: it is not possible to
propose another solution), you should send an email to
[log in to unmask], giving your opinion about what you think of RGB, and
why you think that HSL would help make the Web a more human-oriented
Steven Pemberton, CWI, Amsterdam; [log in to unmask]