suit: #footer .menu .ende{ <- falsch, aber was?

Beitrag lesen

oder in HTML5 <nav> statt <ul id="nav"> und <footer> statt <div id="footer">

nein nav nicht anstelle von ul id="nav" sondern rundherum ;)

<nav id="menu">  
  <ul />  
</nav>

so hast du auch noch den IE 7 befriedigt.

Und wenn man den IE6  auch noch unterstützen muss, kann man gerne eine klasse "first-child" oder "last-child" einbauen oder mit JavaScript (CSS-Expressions) nachhelfen.