Problems with the Child Selector

This page has the following markup:

<DIV class="test">
  <DIV>
    <P><SPAN> THIS TEXT SHOULD HAVE GREEN BORDER </SPAN></P>
  </DIV>
</DIV>

...and the following style:

   DIV.test > * SPAN { border: thick solid lime; }

Here it is:

THIS TEXT SHOULD HAVE GREEN BORDER

For some reason, the selector is not matching. Removing the class selector, the child selector, changing the element, etc... can all make the rule work.

Without the child selector: DIV.b * SPAN

With CODE instead of SPAN but no class on the outer DIV: DIV > * CODE

Without the inner DIV, the outer P, the universal selector, and the descendant selector: DIV.d > SPAN

Without the inner DIV: DIV.e > * SPAN

Without the P: DIV.f > * SPAN

With a more explicit rule: DIV.g > * > * SPAN

End.