Jetzt musst du dir nur noch überlegen, warum du eine Tabelle als Navigation verwendest, und nicht ein semantisch eher korrektes Element wie eine Unordered List (<ul>)...
Tabellen dienen NIE NIE NIE NIE NIIIIIEEEEE dem Layout, sondern nur um tabellarische Daten darzustellen. Das ist dasselbe, als würdest du Zeilenabstände zwischen Absätzen mit <br>'s machen statt über entsprechende margins an den <p>'s.
Wenn du dich fragst, ob du halbwegs was sinnvolles geschrieben hast, dann besorg dir einen textbasierten Browser wie Lynx. Wenn du deine Seite dort nicht absolut intuitiv navigieren kannst, dann baue sie um.
Nächster Aspekt:
CSS-Deklarationen haben, von Kleinigkeiten abgesehen, im HTML-Code nichts zu suchen. Dasselbe gilt für JavaScript. CSS und JS sollten nach Möglichkeit immer in externe Dateien ausgelagert werden. Außerdem sollten alle einzelnen Styles sowie alle einzelnen JS-Quelldateien falls möglich zu jeweils einer Datei zusammengefasst und komprimiert werden.
Ach ja, und schieß deinem Lehrer mal in den Fuß für seine beschissene Arbeit. Jeder, der lehrt, dass man <table> für was anderes als tabellarische Daten verwendet, den sollte man kielholen.