Wäre klasse, wenn mir jemand den Fehler erklären könnte :)
gern
#navi:hover li ul {
obriges wirkt für alle ul-elemente als nachfahre eines li-elements welche in einem beliebigen elemente mit der id "navi" liegen, welches gerade einen hover-zustand erlebt (drüberfahren mit der maus)
was du eigentlich willst ist alle ul-elemente ansprechen, die innerhalb eines li-elements liegen (welches grade den hover-zustand hat) und in einem element mit der id "navi" liegen