Como solucion, (no se si la mejor) te puedo ofrecer lo siguiente:
Código:
<html>
<head>
<style>
#left li.current {
color: blue;
}
#left li.notselected {
color:black;
}
</style>
</head>
<body>
<div id="left">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li class="current">5
<ul>
<li class="notselected">5-1</li>
<li class="notselected">5-2</li>
<li class="selected">5-3</li>
<li class="notselected">5-4</li>
<li class="notselected">5-5</li>
</ul>
</li>
</ul>
</div>
</body>
</html>
Al aplicar estilo a una unsortedlist anidada hace que hereden los estilos, y una forma sencilla de solucionar eso es aplicandole otro estilo a las que no quiere que se hereden los estilos aplicandoles otro, como es el caso de la clase
"notselected".
Entonces lo unico que tenes que hacer es aplicarles el otro estilo a las li que no queres que cambien de color.
Saludos!