Frame
Mit Hilfe von Frames können einzelne Segmente innerhalb einer Website als frei gestaltbare Teilbereiche definiert werden.
Mit Frames können z. B. das Navigationsmenü und der Content oder ein Videobereich getrennt werden. Die Anordnung dieser „Fenster“ erfolgt über das sogenannte Frameset. Allerdings stellen Frames Suchmaschinen-Crawler häufig vor Probleme und verhindern die korrekte Indizierung sowie Darstellung der Website . Aus diesem Grund werden bei der Erstellung von Websites heute meist Alternativen genutzt. Als Frame wird häufig auch der sogenannte InlineFrame bezeichnet. Hierbei handelt es sich um eine Sonderform des Frames.
Der Ursprung der Frame-Technik
Die Technik, Frames zum HTML-Seitenaufbau zu verwenden, wurde mit von Netscape mit dem Browser Navigator 2.0 vorgestellt und ermöglicht es Webmastern, das Browser-Fenster in verschiedene programmierbare Bereiche zu unterteilen. Die Größe und die Anzahl dieser separaten Fenster werden über das sogenannte Frameset definiert. Seit dem Jahr 1997 und der Einführung von HTML 4 wird die Frame-Technik auch vom W3C empfohlen, das hierfür mit dem 4.0 Frameset einen eigene Dokumententyp für HTML etabliert hat. In HTML 5 ist keine Verwendung von Frames mehr vorgesehen.
Was die Frame-Technik verspricht
Mit Hilfe von Frames ist es möglich, mehrere Einzel-HTML-Dokumente auf einer HTML-Seite anzuzeigen. Auf diese Weise ergeben sich für Webmaster erweiterte Funktionalitäten der Seite sowie zusätzliche Darstellungsmöglichkeiten von Inhalten. Zugleich wird die Datenmenge minimiert, die vom Webserver beim Seitenabruf übertragen wird. Die Website lässt sich folglich mit Hilfe von Frames ohne Veränderung der Server-Konfiguration verändern. Ein gängiges Beispiel für den Einsatz von Frames ist die Trennung von Navigation und Inhalt. Das Navigationsmenü wird dabei nicht jedes Mal neu auf jeder Unterseite eingefügt, sondern über ein separates HTML-Dokument abgerufen, das über das Frameset verwaltet wird.
Zu den weiteren Vorteilen der Frame-Technik gehört es allgemein auch, dass User in Teilbereichen der Website unabhängig voneinander scrollen können.
Als einer der wichtigsten Nutzen von Frames wird häufig auch genannt, dass sich über Frames Inhalte aus verschiedenen HTML-Quellen auf einer Website einbinden und kombinieren lassen, ohne dass eigene Inhalte erstellt werden müssen.
Warum Frames nicht gerne verwendet werden
Die Probleme, die mit Frames einhergehen, lassen sich auf drei zentrale Aspekte subsumieren:
1. Indizierung der Inhalte durch Suchmaschinen:
Suchmaschinen-Spider crawlen zwar die Seiten mit Frames, lesen dabei aber meist nur die Inhalte der Frame-Unterseiten. Dadurch kann es vorkommen, dass z. B. die Startseite oder weitere Unterseiten eines Web-Projekts nur unzureichend indiziert werden, weil sie lediglich aus einem Frameset besteht, das keine Inhalte aufweist.
Warum das so ist, kann dieses Beispiel erläutern:
<!DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.01 Frameset//EN“ „http://www.w3.org/TR/html4/frameset.dtd“> <html> <head> <title>Frameset mit Sitemap</title> </head> <frameset cols=“250,*“> <frame src=“verweise.htm“ name=“Navigation“> <frame src=“startseite.htm“ name=“Daten“> <noframes> <body> <p><a href=“verweise.htm“>Navigation</a> <a href=“startseite.htm“>Daten</a></p> </body> </noframes> </frameset> </html>
Quelle: de.selfhtml.org
Wo im “normalen” Quelltext hier lesbarer Text zu finden wäre, bietet dieser Quellcode dem Crawler im <body>-Bereich lediglich den Verweis auf ein anderes HTML-Dokument. Folglich gibt es für den Robot keine Inhalte, die er indizieren kann. Abhilfe kann hier der sogenannte Noframes-Bereich.
2. Erreichbarkeit:
Frame Websites können Inhalte verändern, ohne dass sich dabei die angezeigte URL verändert. Für User bleibt es demnach häufig unmöglich, Einzelbereiche bzw. Frames zu verlinken, da sie nur die URL des gesamten Framesets kopieren können.
3. Barrierefreiheit und Browserdarstellung:
User, die auf Screenreader angewiesen sind oder ältere Browser verwenden, können u. U. darunter leiden, wenn sie eine Frame-Seite aufrufen, weil diese nicht korrekt ausgelesen werden kann.
Der Noframes-Bereich
Mit Hilfe des Noframes-Bereiches können Webmaster eine Stelle im Quellcode einer Frame-Seite mit Content füllen, welcher die Inhalte der Frames beschreibt, ähnlich wie bei einem Alt-Tag für Bilder. Der Noframes-Bereich ist sowohl für User lesbar, deren Browser Probleme mit der Darstellung von Frames haben als auch für Suchmaschinen-Robots, die beim Auslesen von Framesets üblicherweise keine Inhalte sehen. Noframes-Bereiche können sowohl für Framesets als auch für einzelne Frames hinterlegt werden und lassen sich mit XHTML und allen gängigen Browsern auslesen.
Welche Alternativen zu Frames gibt es?
Um eine Website multifunktional zu gestalten, stehen heute viele Alternativen zu Frames zur Verfügung. So bieten z. B. serverbasierte Techniken wie Server Side Includes oder CSS die Möglichkeit separate Funktionsbereiche in eine HTML-Seite einzubinden, ohne die Lesbarkeit durch Suchmaschinen zu beeinträchtigen. Ebenso können Ajax oder Javascript dabei helfen, die Seitenanzeige und -inhalte über Server-Anfragen zu verändern.
Betrachtet man einen Großteil der aktuellen Websites, werden Frames nur noch selten eingesetzt und stattdessen die hier erwähnten Alternativen zugunsten einer verbesserten Usability genutzt.
Der Inlineframe (iframe)
Mit Hilfe von iframes können Websites schnell und einfach mit zusätzlichen, externen Inhalten bestückt oder mit Zusatzfunktionen versehen werden. Bekannte Beispiele für beliebte Inlineframes sind eingebettete YouTube-Videos oder auch Wetter-Widgets. Die Vorteile von iframes bestehen darin, dass diese Objekte einfach in den vorhandenen HTML-Code eingefügt werden. Größe und Einbettungsart der iframes werden mit Hilfe von HTML definiert.
Der Code zur Einbettung ähnelt dem von eingefügten Bildern:
<iframe src=“Quelle“ </iframe>
Auch bei iframes gilt, dass der übermäßige Einsatz verhindert, dass wichtige Inhalte von Suchmaschinen gelesen werden können. Allerdings stehen auch zur Auszeichnung von Inhalten der iframes alle gängigen HTML-Marker zur Verfügung.
Google Chrome Frame
Hierbei handelt es sich nicht um eine besondere Programmierweise, sondern um ein Browserplugin von Google, das für den Internet Explorer von Microsoft geeignet ist. Es soll Usern Vorteile beim Seitenaufbau sowie eine erweiterte Browser-Funktionalität bieten.