Semánticamente
es incorrecto (ver "content model") que una lista tenga hijos que sean
div. Es decir, esto así no valdría:
No es válido en HTML5 ni XHTML, ni tan siquiera en HTML4.
Así que tendría que ser, si acaso, algo así:
Consejo, pues puedes usar, que es muy habitual, el selector
> que sirve para hacer referencias a elementos hijos, no a todos los elementos descendientes como suele ocurrir con los selectores CSS.
Esto afectaría solo a los
li que estén dentro de una lista
que sea hija de un elemento cuyo identificador sea
algo:
Y si, si haces una lista, es siempre mejor que esté bien estructurada. Dentro de los elementos de cada lista, dentro de
li, puedes poner cualquier cosa que puedes poner en un
div, pero no dentro de
ol o
ul. Entonces algo así sería correcto: