Guarda che css e javascript non si escludono a vicenda: sono semplicemente due dei tre elementi che concorrono a comporre un documento web.
Se c'è bisogno di qualche particolare comportamento, allora javascript ben venga, ma va utilizzato con moltissima attenzione e competenza, garantendo l'accessibilità piena anche con js disattivato (o con screen-reader).
Di certo oggi fare rollover con javascript non ha più senso, e non so se per un menù di navigazione il discorso cambi. Forse bisogna stare attenti a non spingere verso cigli troppo lontani linguaggi che hanno uno scopo definito, come xhtml o css (errore a cui si sta cercando di riparare in questi anni tramite gli standard e compagni).
![]()