"inherit" and the cascade

It is my belief that the CSS-2 "inherit" value should work within the 
cascade; i.e., that it may be overridden with a selector of greater 
specificity.

The spec doesn't make this quite clear: 
http://www.w3.org/TR/REC-CSS2/cascade.html#value-def-inherit

Apart from use in user stylesheets, the primary utility of the 
inherit value, as I see it, is simply to assert that normal 
inheritance should work, instead of not-work, as in the infamous case 
of TABLE and its parents in dominant UAs.

I am testing an implementation in which all of the paragraphs in the 
test document below are black. It's also at 
http://verso.com/~todd/inherittest.html. I think this is in error. Is 
this correct?


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
   "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
   <title>inherit test</title>
<style type="text/css">
body	{
	color: black
	}
p	{
	color: inherit
	}
p	{
	color: red
	}
p#foo	{
	color: red !important
	}
</style>
</head>
<body>
I should be black.
<p>
   Should I be black or red?
</p>
<p id="foo">
   Should I be black or red?
</p>
</body>
</html>
--
Todd Fahrner

Received on Wednesday, 3 November 1999 14:23:32 UTC