Re: Bug: doesn't warn when background or text color is set without setting both

On Fri, 2 Dec 2005, Gavin Stokes wrote:

> The validator needs to warn when a page or style sets either the text or 
> background color without setting both.

It does, unless explicitly told not to. This behavior has been heavily 
criticized too, mostly in complicated contexts and due to lack of 
understanding how the cascade really works.

> The most common result of this error is invisible text,

Or lack of sufficient contrast. But it is not an error in the sense of 
violating a specification. The specifications do not even forbid
   * { color: white !important; background: white !important; }
It is absurd, but it does not violate the specifications.

> To reproduce on Windows, go into the Display/Appearance settings and pick the 
> "high contrast black" color scheme.  Then visit 
> http://developers.videolan.org/svn.html, a page that features the "W3C check" 
> logo at the bottom.  Most of the page's text is invisible, so it definitely 
> shouldn't have passed validation.

The word "validation" would probably best be forgotten. It is abused so 
widely and wildly that you cannot make a point using it, except in small 
circles of experts after making sure everyone knows your definition for 
"validation".

Since setting background color without setting text color does not violate 
any HTML or CSS specification, it would be incorrect to report it as an 
error. If you read the "CSS Validator" report for the page, you will
find warnings about the problem you have described. What else _could_ the 
"CSS Validator" do?

The "W3C check" logos are simply claims - quite often false claims, and 
sometimes intentionally false claims - about conformance to something more 
or less unspecified. Regarding the CSS logo, the W3C says:
"To show your readers that you've taken the care to create an 
interoperable Web page, you may display this icon on any page that 
validates."
The implicit definition of "validates" is that the style sheet passes the 
checks performed by the "CSS validator", in the sense that no error 
message is issued and the "CSS validator" reports "This document validates 
as CSS!" (which is rather absurd of course especially when the submitted 
document is an HTML document). Warnings are not considered. Of course, the 
statement about "care to create an interoperable Web page" misleads 
authors into misleading users, and the fact that "validated" style sheets 
may contain grossly absurd or constructs is a small part of this. But the 
author of the cited page is formally quite within her or his rights to 
use the "Valid CSS!" logo by W3C rules.

-- 
Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/

Received on Sunday, 4 December 2005 09:54:12 UTC