Browser Gamma-Consistency Test

These pages were created in order to test the self-consistency of web
browsers' gamma correction. In brief, if they gamma-correct HTML colors
on non-sRGB systems (which would be proper, according to the
HTML 4.01
specification), then they should gamma-correct unlabelled images
in the same way. If they gamma-correct CSS colors on non-sRGB systems
(which is required, according to the CSS Level 1
specification), then they also should gamma-correct unlabelled images
in the same way.

Alternatively, if they don't gamma-correct HTML or CSS colors (which
is current practice in almost all web browsers and is conformant behavior in
HTML 4.01 but not in CSS), then they should not gamma-correct unlabelled
images, either. In the latter case, however, labelled images (such
as PNGs with a gAMA, cHRM, sRGB or iCCP chunk, or JPEGs with an ICC profile
marker) are unlikely to match the HTML colors across all platforms--and,
depending on where the images were created, possibly not on any platform.

Currently 12 test pages are available. In all but the 1/1.6 and ICC
(1/1.0) pairs, the RGB palette values encoded in the images are identical to
the RGB hex values used for the table cells; in other words, in eight of the
cases, doing no gamma correction on anything will produce self-consistent
results on all systems (though with considerable variance between different
systems). Doing gamma correction only on the PNG images will produce
self-consistent results for all of the tests if and only if the browser
believes the display system to be sRGB-like (as on virtually all Windows and
Unix PCs); on non-sRGB systems, none of the PNGs will match the background
colors. Similar results would hold for browsers that gamma-correct only the
CSS colors.

The browsers mentioned in this section have not been retested since
the second millenium C.E.

How do the major browsers fare on the gamma-consistency suite? Overall,
not so well. Here are some results for Netscape
Navigator 4.7, Mozilla 2000-09-26-06-M18 (which is what was used for the
screenshot above, title bar notwithstanding), and Internet Explorer 5.0.
The three were tested on sRGB displays, which in all but the 1/1.6 case
[the ICC/1.0 case was added much later] means the appearance of the images
would match the appearance of the table cells if the browser failed to do
any gamma correction at all:

In this table, OK or no refers only to whether the colors
match--i.e., whether or not the handling of gamma is consistent--not to
whether the browser does gamma correction in the first place. Hence
NN 4.7's results: it doesn't do gamma correction, and therefore its
results look good in four out of the five HTML cases. (It also doesn't
do CSS when JavaScript is disabled, which is why it failed in the remaining
five test cases. It has not been retested with JavaScript and CSS enabled.)

Mozilla appears to be fully conformant (except for the newly added ICC-profile
images), but keep in mind that this was on an sRGB system. On a
Macintosh, it was reported to fail in all but the two GIF cases, which would
make sense: as of late 2000, it gamma-corrected
only PNGs (bug
53597). A patch has been submitted to extend gamma correction to GIFs,
JPEGs, and both HTML and CSS colors, but it did not get into the initial
NN 6.x releases (and the browser has not be retested since then).

MSIE 5.0 is an interesting case. Initially it appeared to match the
non-gamma-correcting results of NN 4.x, but the two gamma 1/2.2 cases
belie that appearance. It is doing something to the PNG colors,
but clearly not the same thing as to the HTML and CSS colors. (Best
guess: it gamma-corrects only the PNGs, but it assumes a display gamma
of something other than 2.2--perhaps 2.0?)