La forma más "simple" sería utilizando la pseudoclase 'nth-child(nº)'. Es css3, con los navegadores en sus versiones más recientes sin problemas, los pseudonavegadores símplemente la ignorarán:
Código css:
Ver originalul#articles li:nth-child(2n+1) {background: #cdcdcd;}
ul#articles li:nth-child(2n) {background: #fff;}
Si lo quieres compatible con con esos pseudonavegadores, tendrías que aplicar una clase a cada 'li' mediante algún lenguaje de programación o algún js para alternar el fondo.