En realidad la respuesta es depende.
Semánticamente, si es un menú de los que se suelen hacer, que toda cosa es una enlace, si, debe de tener contenido (contenido = enlace). Ahora, si no va a tener ningún enlace, entonces no lo hagas con un enlace; pon un
span dentro de
li. Existe la fea costumbre de usar un enlace para cualquier cosa; por ejemplo para acciones de JavaScript, todo son enlaces.
En casos así, yo prefiero poner un
span o cualquier otra cosa, se puede usar
cursor para simular el enlace —ya que los usuarios están acostumbrados a la manita— y luego aplicar el
:hover o la acción JavaScript a ese elemento.
La segunda pregunta, la solucionas mezclando enlaces con "espanes" en selectores:
Así te quedan iguales aunque unos sean funcionales y otros no. Es decir, al final todo pasa por usar cada cosa para lo que es.
* Supongo que es malo que JKL me suene al surfero de un capítulo de Bob Esponja.