Tipps zur Suchmaschinenoptimierung - Kapitel "Grundlagen-Technologie"

Teil 1 von 3: Was sind Frames?

Frames sind schlecht„. Viel mehr als das bekommen Sie oft nicht zu hören, wenn es um Suchmaschinenoptimierung geht. Was Frames sind, wozu diese dienen und warum sie ein Problem darstellen… und was Sie tun können, wenn Ihre Seite auf Frames basiert, zeigt Ihnen eine kleine „Serie“ zu Frames.

Eine weitere Aussage, die auf jeden Fall nach der Altersrechnung im Internet stimmt, ist: „Frames sind alt„. Sie finden aber nach wie vor Anwendung und in Form „modernerer“ so genannter „IFrames“ gehören sie sogar zum Repertoire vieler technologisch aktueller Websites… sogar Suchmaschinen wie Google nutzen IFrames beim Nachladen von Werbeenblendungen im AdSense-Werbeprogramm. Aber was sind Frames eigentlich?

Der Einsatz von Frames (man mag den Begriff in diesem Zusammenhang mit „Rahmen“ übersetzen) bedeutet, dass eine Webseite, die im Browser dargestellt wird, eigentlich aus (beliebig vielen) mehreren „Teilseiten“ besteht, die einzeln vom Browser geladen und in freier Anordnung am Bildschirm dargestellt werden. Oft, aber nicht zwingend, haben diese einzelnen „Teilfenster“ auch eigene Scrollbalken, so dass jeder Abschnitt der Seite mehr Inhalt haben kann, als auf dem sichtbaren Bildschirmausschnitt dargestellt wird. Anders als eine „komplette“ längere Seite, die nur zu einem (Satz von) Scrollbalken im Browser führt, mit dem nach unten (und ggf. auch nach rechts und links) gescrollt werden kann, ist eine Frameseite also aus mehreren Einheiten aufgebaut, die jeder für sich einen eigenen Inhalt mitbringen.

Anzahl, Höhe, Breite und Anordnung der Frames werden in einem Frameset beschrieben, welches in der Seite vorhanden ist, die zuerst vom Browser geladen wird. Aus den im Frameset vorhandenen Anweisungen wird dann die eigentliche Seite aufgebaut, indem die einzelnen Teile in Form separater Seiten nachgeladen und anweisungsgemäß am Bildschirm angeordet werden.

Ein Beispiel für den Quellcode einer solchen Frameseite:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title>MyAtom24 - Atomkraftwerke günstig online kaufen</title>
<meta name="keywords" content="MyAtom24 atomkraftwerk günstig">
<meta name="description" content="MyAtom24 bietet
unschlagbar günstige Atomkraftwerke, die Sie direkt im
Online-Shop kaufen können">
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
</head>

<frameset rows="*" cols="150,*" frameborder="NO"
border="0" framespacing="0">
  <frame src="navigation.html" name="navFrame"
   scrolling="NO" noresize>
  <frameset rows="80,*" frameborder="NO" border="0"
   framespacing="0">
    <frame src="header.html" name="headerFrame"
     scrolling="NO" noresize>
    <frame src="atomkraftwerke-index.html"
     name="contentFrame">
  </frameset>
</frameset>
<noframes>
<body>
Wenn Sie das hier lesen können, unterstützt Ihr
Browser keine Frames. Installieren Sie einen
aktuellen Browser.
</noframes>
</body></noframes>
</html>

Im Beispiel werden zwei Framesets ineinander verschachtelt, so dass ein Aufbau mit einem Kopf, einer Navigation auf der linken Seite und ein Hauptinhalt (für den kompletten Rest) erzeugt wird. Der kursiv geschriebene Text ist das, was ein Browser anzeigen würde, wenn er mit Frames nichts anfangen kann… dazu im zweiten Teil mehr.

Wozu braucht man Frames?

Als Frames entwickelt wurden, waren Netscape Navigator 2.0 und der Internet Explorer 3 die Browser, mit denen man sich das Internet „angesehen“ hat; Leitungen waren nach heutigen Maßstäben extrem langsam und Verbindungen wurden in Minuten berechnet; übertragenes Datenvolumen kostete bares Geld. Durch die Aufteilung von Webseiten in mehrere Teile konnten Bereiche, die beim Wechsel von einer Seite zur nächsten innerhalb der eigenen Webseite nicht verändert werden mußten, beibehalten werden, so dass nur bestimmte Teile einer Seite nachgeladen werden mußten. Der Hauptgrund für die Existenz ist also der Hintergedanke der Einsparung von Traffic. Außerdem ist es natürlich auch bequem, wenn man nicht bei jeder HTML-Seite den Kopf, die Navigation etc. erneut „pflegen“ muss, wenn es Änderungen gibt. Denn „zu Frame-Zeiten“ wurden die HTML-Seitenquellcodes zumeist manuell erstellt und ernsthaft einsetzbare Content Management Systeme steckten entweder in den Kinderschuhen oder waren für Normalsterbliche kaum erschwinglich.

Daher bestehen viele Framesets aus drei oder vier Teilen, die in Kopf, Navigation, Hauptinhalt und ggf. Fuß aufgeteilt sind. Da im Kopf meistens eine konstante Grafik und der Name der Site, des Unternehmens oder andere feste Bestandteile gezeigt wurden (und werden), bildete dieser einen eigenen Frame, dessen Inhalt in einer eigenen HTML-Seite ausgelagert wurde. Egal wie viele Seiten ein Besucher einer so aufgebauten Domain ansieht – der Kopf wird nur einmal geladen. Beim Klick auf einen Link in der Navigation (oft auch ein eigener Frame unter dem Kopf oder an der linken Seite) wurde dann nur eine neue Seite in den Bereich des Framesets geladen, der den Hauptinhalt enthält.

Auch für Weiterleitungen werden Frames heute (leider) noch gern genutzt. In diesem Fall enthält das Frameset nur einen Frame, der den ganzen Inhaltsbereich füllt und in dem die Seite nachgeladen wird, zu der weitergeleitet werden soll.

Die moderneren IFrames arbeiten prinzipiell genauso, können aber direkt in eine HTML-Seite eingebunden werden, ohne ein Frameset zu benötigen und bieten auch erweiterte Möglichkeiten der Programmierung und der Formatierung, die aber zum Verständnis der Arbeitsweise unnötig sind. In einem IFrame werden häufig Inhalte fremder Websites nachgeladen. Das ist z. B. die Werbeeinblendung eines Affiliate-Netzwerks oder von Google AdSense – oder auch ein „dynamischer“ Banner oder Infobutton aus einem Community-Portal, die letzten Blogeinträge auf Ihrer Startseite o. Ä.

Klingt also alles recht harmlos… warum also sind Frames angeblich schlecht? Weil es einige (potentielle) Probleme mit Frames gibt, die der zweite Beitrag der Serie zeigt.