Hi Julia!
Ich habe schon mal vor einiger Zeit mal ein bischen zusammengeschrieben, was zu Navigation, Frames und diversem Anderem zu sagen ist. Ich habe dies nun nochmal überarbeitet und möchte dir zeigen, warum das existierende Konzept der Seite deines Bekannten unbrauchbar ist und wie Alternativen aussehen könnten.
Es verschiedene Konzepte, wie man eine Navigation realisieren kann:
*******************************************************************
-----------------
|Nav1| ContentX |
|Nav2| ContentX |
|Nav3| ContentX |
-----------------
NavX seien die Menü/Navigationslinks
ContentX sei der Inhalt, der nach Linkclick erscheine
-
Jede Seite beinhaltet die (komplette) Navigation und zusätzlich den jeweiligen Content - dies läßt sich schön über Serverside Includes realisieren (include navigation in every page).
-
Iframe Technologie: Wichtig ist hierbei, die Navigation in den Iframe zu stellen und in jeder Seite den Navigationsiframe einzutragen und _nicht_ umgekehrt den content in einen iframe zu legen. Die Navigation ändert über den NavX link die parent Adresse.
-
Serverseitige Lösungen, welche die kompletten Seiten als Ergebnis eines jeweils parametrisierten CGI Aufrufs liefern (kleiner Nachteil scheint hier die schlechtere Bewertung durch Suchmaschinen zu sein)
Ab jetzt folgen schlechte Navigationskonzepte:
**********************************************
4) Javascript für die Navigation erforderlich machen, beispielsweise indem man anstelle von Links fälschlicherweise Buttons verwendet.
Nachteile:
- bei deaktiviertem JS ist die Navigation nicht funktional
- die Seite ist nicht barrierefrei
-
Mittels javascript kann man je nach link die Seite dynamisch befüllen, die Seite wird also nie verlassen (es gibt nur eine html Adresse).
Nachteile:
- bei deaktiviertem JS ist die Seite nicht funktional
- es ist nicht möglich, die "verschiedenen Seiten" von außen direkt zu erreichen.
- die Seite ist nicht barrierefrei
- die Seite ist schlecht zu maintainen -
Es ist möglich, mittels CSS je nach Link verschiedene Ebenen der Seite einzublenden.
Nachteil:
- Grauenvoll zu maintainen, da mehrere Views in einer Seite definiert werden
- die Seite ist nicht barrierefrei -
Frames verwenden oder den Content in den Iframe stellen:
Nachteile:
- Bookmarking einer bestimmten Contentseite nicht möglich
- Suchmaschinenindizierung ist problematisch
- Direkte Seitenwahl von außen nicht möglich -
Navigation in einem anderen Fenster als Contentfenster (Navigation als Remote control). Nachteile:
- Probleme mit Popup blockern und "öffnen als neuer Reiter" möglich
- Versehentliches Schliessen des Navigationsfensters verhindert weitere Navigation
- Fokus Probleme
Grundsätzlich solltest du folgendes immer im Auge behalten:
***********************************************************
0) Eine gute Seite validiert
-
Eine gute Seite "funktioniert" ( = macht ihre Infos verfügbar) ohne aktiviertes JS, ohne CSS und idealerweise ist jede Seite als Direktlink erreichbar. Insbesondere Flash dient nur der "Seitenverschönerung".
-
Eine gute Seite verwendet HTML als Auszeichnungssprache und somit eine Liste um Listen darzustellen (ul/li, z.B. Navigation), eine Tabelle (table) für Tabellarische Informationen (und nicht für das Layout!) usw., CSS wird für die Formatierung verwendet!
-
Mit CSS hat die Seite idealerweise ein fließendes Layout, paßt das Seitenlayout also an verschiedene Viewportgrößen an und ist nicht auf eine bestimmte Größe (noch schlimmer: Auflösung) festgelegt.
-
Wenn man noch weiter gehen will, ermöglicht xml/xsl dann auch noch die Trennung von Daten und deren Auszeichnung - ich persönlich finde xml genial...
Grüsse,
Richard