Hi,
Im Internet Explorer und in Firefox erscheinen die Submenüs immer in der linken oberen Ecke und ich weiß beim besten Willen nicht wieso, ...
Deswegen:
.menu ul li {
display: inline;
...
}
Abgesehen davon würde ich dir auch empfehlen, die grundlegenden Eigenschaften nicht in Selektoren mit Pseudo-Klassen festzulegen, sondern separat und dann nur die Eigenschaften festlegen, die sich auch tatsächlich ändern (hier bei :hover).
Gruß Gunther