| ## Frames als Mittel für Seitenlayouts
| Sinnvolle Einsatzmöglichkeiten für Frames Unfaire Schaufenster-Effekte

## Sinnvolle Einsatzmöglichkeiten für Frames

Frames - Informationsverteilung auf mehrere, voneinander unabhängige Fenster - sind ein faszinierendes Werkzeug, aber auch ein Werkzeug, mit dem man viel verkehrt machen kann. Generell gilt: jeder Einsatz von Frames muss gerechtfertigt sein. Das bedeutet: die Verwendung der Frame-Technik muss dem Anwender als sinnvoll und vorteilhaft erscheinen. Wer Frames aus purem Selbstzweck einsetzt, muss damit rechnen, als technikverliebter HTML-Novize statt als souveräner Web-Designer betrachtet zu werden.

Der Grund dafür ist, dass Frames nicht wegzudiskutierende Nachteile haben:

- Probleme bei nicht Frame-fähigen Web-Browsern:
  Frames werden nicht von allen Web-Browsern angezeigt. Da die gesamte Struktur eines auf Frames basierenden Projekts von der Struktur herkömmlicher Projekte entscheidend abweicht, kann ein Anbieter von Frames solchen Anwendern, die keine Frames anzeigen können, entweder gar keine Alternative anbieten, oder eine "zweigleisige" Alternative, die sehr aufwendig zu realisieren und zu pflegen ist.
- Frames und Bildschirmauflösung
  Bei kleineren Bildschirmen, z.B. bei Notebooks oder Handheld-Computern, sind mehr als zwei Framefenster bereits eine Zumutung fürs Auge und die Übersicht.
- Ladezeiten
  Frames verlangen mehr HTTP-Kommunikation zwischen Browser und Server, da insgesamt mehr Dateien geladen werden müssen. Im Web kann es unter ungünstigen Verhältnissen leichter zu längeren Ladezeiten kommen.
- Problematisches Direktansteuern von untergeordneten Seiten
  Es ist zwar theoretisch möglich, aber meistens nicht im Sinne des Anbieters, wenn andere Anwender ein Lesezeichen oder einen Verweis auf eine HTML-Datei setzen, die Teil eines Framesets ist. Das ist in vielen Fällen ärgerlich. So wird beispielsweise anderen Informationsanbietern die Möglichkeit genommen, in einem bestimmten Informationszusammenhang auf eine bestimmte Seite in einem fremden Projekt zu verweisen.

In folgenden Fällen ist der Einsatz von Frames für den Anwender am ehesten nachvollziehbar:

- zum schnellen Wechseln zwischen Informationseinheiten
  In diesem Fall enthält ein Framefenster ein umfangreiches Verzeichnis mit anklickbaren Verweisen auf einzelne Informationsseiten, die in einem anderen, festen Framefenster angezeigt werden. Das "Inhaltsverzeichnis" bleibt also jederzeit eingeblendet, und der Anwender kann zu jedem Zeitpunkt einen neuen Verweis daraus auswählen. Das erspart dem Anwender den wiederholten Rücksprung von den einzelnen Informationsseiten auf das übergeordnete Verzeichnis.
  Beispiel: ein Anbieter von Ferienappartements kann alle zur Verfügung stehenden Objekte in einem Verweis-Verzeichnis auflisten und das jeweils ausgewählte Objekt in einem festen anderen Framefenster anzeigen.
- zum ständigen Einblenden projektglobaler Steuerverweise
  Bei umfangreichen Projekten, in denen dem Anwender das Gefühl des "lost in hyperspace" droht, ist es sinnvoll, in einem separaten Framefenster immer gültige Steuerverweise anzubieten, z.B. zur Homepage, zur nächsthöheren logischen Ebene, zum Stichwortverzeichnis oder zur Suchdatenbank. Bei kleinen Projekten, die nur aus einer Handvoll Seiten bestehen, wirkt diese Technik dagegen übertrieben und vermittelt dem Anwender eine falsche Vorstellung von der Größe des Projekts. Wenn der Anwender in einem solchen Fall nach wenigen Mausklicks feststellt, dass er bereits alles gesehen hat, wird er um so enttäuschter sein.
  Beispiel: Eine Zeitung, die im Web ein großes Archiv mit älteren Artikeln anbietet, könnte mit Hilfe der Frame-Technik ständige Verweise zu einem thematisch sortierten Zugangsverzeichnis, zu einem Stichwortverzeichnis und einer Volltext-Suchdatenbank für die einzelnen Artikel anbieten.
- zum gleichzeitigen Anzeigen von zu vergleichenden Informationen
  Hypertext bedeutet nicht nur, dem Anwender per Mausklick weitere Informationen zur Verfügung zu stellen, sondern auch, dem Anwender die Möglichkeit zu bieten, sich selbst Informationen so zusammenzustellen, dass er sie optimal miteinander vergleichen und daraus Schlüsse oder Entscheidungen ableiten kann. Zu diesem Zweck eignet sich die Frame-Technik hervorragend, da sie es erlaubt, verschiedene, getrennt voneinander gespeicherte Informationen auf Anwenderwunsch gleichzeitig anzuzeigen.
  Beispiel: Eine Verbraucherberatung könnte in einem viergeteilten Frameset in zwei Frames zwei gleichartig aufgebaute Verweis-Verzeichnisse zu Produkttests anbieten. Im dritten Framefenster wird der Produkttest angezeigt, den der Anwender im ersten Framefenster mit Verweisen auswählt; im vierten Framefenster kann der Anwender einen Produkttest anzeigen, den er im zweiten Framefenster mit Verweisen auswählt. Auf diese Weise kann der Anwender beliebige getestete Produkte direkt miteinander vergleichen. Voraussetzung hierzu ist natürlich, dass alle Produkttests einen einheitlichen Aufbau und ein einheitliches Bewertungsschema haben, um direkte Vergleiche zu erlauben.
- bei besonders kunstvoller Seitengestaltung
  In diesem Fall muss der Anwender auf den ersten Blick erkennen können, dass die Frame-Technik eine bestimmte künstlerische Aussage unterstützen soll.

Bei Verwendung von Frames besteht auch noch eher als bei "einfachen" Seiten die Gefahr eines gestalterischen Overkills. Achten Sie bei Frames unbedingt darauf, dass die Farben der Inhalte in den verschiedenen Framefenstern insgesamt miteinander harmonieren. Das Gleiche gilt auch für andere optische Eigenschaften wie Schriftarten, Schriftgrößen usw. Ein Navigationsfenster muss nicht krampfhaft "anders" aussehen als ein inhaltstragendes Fenster, damit auch ja jeder Besucher sieht, dass es sich um Frames handelt. Kontraste zwischen Framefenstern dürfen nicht die Regeln einer homogenen Gesamtgestaltung verletzten.

## Unfaire Schaufenster-Effekte

Mit Hilfe von Frames ist es auch möglich, fremde Web-Seiten innerhalb eines Framefensters im eigenen Web-Projekt darzustellen. Dies ist jedoch sehr problematisch und in den meisten Fällen unfair. Denn auf diese Weise verkommen fremde Web-Seiten zu "Schaufenstern" innerhalb des eigenen Web-Projekts. Das ist eine unfeine Geste gegenüber den Fremdanbietern, weil es das eigene Web-Projekt in den Augen des Anwenders als "Mega-Projekt" erscheinen lässt. Es ist auch juristisch bedenklich, da Sie sich leicht eine Klage wegen Urheberrechtsverletzung einhandeln können, wenn Sie Fremdinhalte "vereinnahmen".

Ferner kann es auch passieren, dass in einem Framefenster eine Fremdanbieter-Seite angezeigt wird, die ihrerseits Frames einsetzt. So kommt es zu einem ärgerlichen "Fraktal-Effekt" von Framefenstern auf dem Bildschirm des Anwenders.

Wenn Sie innerhalb eines Frame-Projekts auf fremde Seiten verweisen, sollten Sie eine der folgenden Möglichkeiten wählen:

- Ursprünglichen Fensterzustand wiederherstellen
  Setzen Sie den Verweis so, dass der Anwender Ihr definiertes Frameset verlässt und wieder den Fensterzustand erhält, den er vor Aufruf Ihres Projekts hatte. Dies erreichen Sie durch Verweise von der Art
  `<a href="http://..." target="_parent">Verweistext</a>`
- Doppelverweis anbieten
  Dadurch überlassen Sie dem Anwender die Entscheidung, wie er die fremde Seite angezeigt bekommen will. Notieren Sie zwei Verweise direkt unter- oder nebeneinander, die das gleiche Ziel haben, etwa in der Weise
  `<a href="http://..." target="RechtsUnten">Fremde Seite im Frame rechts unten anzeigen</a><br>`
  `<a href="http://..." target="_parent">Fremde Seite voll anzeigen</a>`
- Anwender auf Möglichkeit zum Verändern der Frames hinweisen
  Wenn Sie keine der beiden anderen Möglichkeiten anbieten wollen, sollten Sie wenigstens das Verändern der Framefenstergrößen durch den Anwender erlauben und den Anwender auf diese Möglichkeit explizit hinweisen. Um das Verändern der Framefenster durch den Anwender zu erlauben, verzichten Sie einfach auf das Attribut `"noresize"` im `<frame>`-Tag.

Mit Hilfe von JavaScript ist es möglich, die Seitenanzeige in Frames verhindern.

| Daten und Programme als Objekt einbinden
| Eingebettete Frames

© 2001 selfhtml@teamone.de