Über mich

Startseite arrow Tipps & Tricks arrow Es waren einmal: Frames

Es waren einmal: Frames

Donnerstag, 24. Januar 2008
Geschrieben von Armin Vieweg
Damals, kurz nach dem Krieg als man nichts mehr hatte, hatte man zumindest Frames um Internetseiten zu erstellen. Was Ihr darüber wissen müsst und wie sie zur Legende wurde, erfahrt Ihr hier.

In einer ganz leichten "Damals war alles besser"-Mentalität werden jetzt die älteren Webdesigner unter uns schwelgen und zwar genau dann, wenn sie sich daran zurück erinnern wie einfach es sein konnte eine Internetseite mit Frames zu erstellen.

Was heute keinen praktischen Wert mehr hat, war damals unumgänglich um komplexe Internetseiten ohne immensen Aufwand abzubilden. Doch in Zeiten von PHP-Includes und AJAX-Requests gibt es bessere Wege den Grundgedanken der alten Frames umzusetzen.



Was ist ein Frame?
Das englische Wort 'Frame' steht für Gerüst und genau diesen Sinn hatten sie auch für damalige Internetseiten. Man teilte die Fläche die einem für eine Website zur Verfügung stand in verschiedene Bereiche auf. Eine sehr häufig genutzte Aufteilung war ein z.B. Links-, Top- und Hauptframe.


Der Aufbau einer Frame-Website

<frameset rows="*" cols="150,*">
  <frame src="links.htm" name="leftFrame">
  <frameset rows="80,*">
    <frame src="oben.htm" name="topFrame">
    <frame src="inhalte.htm" name="mainFrame">
  </frameset>
</frameset>



Links wurde die Navigation geladen, oben das Logo und im Hauptframe die eigentlichen Inhalte. Man konnte die vorgegebenen Größen in Prozent oder absoluten Werten angeben. Ebenfalls möglich war es die Höhe und Breite mit einem Sternchen (*) zu deklarieren, was soviel bedeutete dass die Breite des Frames sich an die des Browsers anpasst.

In die verschiedenen Frames wurden dann einzelne HTML-Dateien geladen. Die Navigation z.B. war so eine andere Datei als der Hauptinhalt.


Vorteil einer Frame-Website
Aus heutiger Sicht überwiegen natürlich die Nachteile, weshalb klassische Frame-Websites sehr rar geworden sind. Doch ein klarer Vorteil ist, dass nicht immer die komplette Website nachgeladen werden musste, sondern nur der Teil um den es sich gerade dreht. Klickte man z.B. auf Impressum kam man im Hauptfenster ins Impressum, die Navigation und der Header der Website haben sich aber nicht verändert.

Das ist aus Performance-Sicht ein großer Vorteil gewesen.


Nachteile einer Frame-Website
Tja, das war es dann auch schon mit den Vorteilen, die mir zumindest aus heutiger Sicht einfallen würden. Größter Nachteil ist die Aufsplittung der Website in kleine Häppchen. Durch Includes passiert zwar heute im Prinzip nichts anderes, doch das Gesamtbild was ausgegeben wird ist meist eine komplette Seite, in der immer wieder alle Inhalte neu geladen werden.

Wenn Google z.B. die Navigation einer Frame-Website indiziert hat und man klickt darauf, bekommt man die Navigation der Seite angezeigt, aber ohne irgendwelchen Inhalte. Mit JavaScripts konnte man das umgehen, aber allem in allem war alles sehr umständlich.


iFrames
Nein, dabei handelt es sich um kein Klettergerüst aus dem Hause Apple, sondern um eine modernere Abwandlung des Frames. Frames konnten immer nur oben, links, rechts oder unten ausgerichtet werden. Mit dem iFrame war es ab sofort möglich einen Frame wo immer man wollte zu platzieren. Diese finden auch heute noch rege Verwendung, obwohl man eigentlich mit AJAX, also dem asynchronen Nachladen von Inhalten, viel besser arbeiten könnte.

In einem schon recht alten Beitrag (IFrame ohne IFrame) habe ich mal erläutert, wie man mit CSS das Aussehen eines IFrames simulieren kann. Das verknüpft mit einem AJAX-Framework hätte den gleichen Effekt wie ein IFrame und bietet sogar noch mehrere Möglichkeiten damit zu arbeiten. Irgendwann werde ich dazu mal ein Tutorial verfassen.


Tschüssi Frames
Antiquierte Technik wird ausgemustert und durch neue, bessere ersetzt. Ein paar Wenige werden dem sicher nachweinen, doch der Großteil dürfte froh darüber sein, dass alte Probleme beseitigt und dafür neue geschaffen wurden ;)



Eine Fortsetzung der Doku-Reihe "Es waren einmal" ist auch schon geplant und zwar zum Thema Tabellen (Tables). Sobald sie fertig ist, findet Ihr sie auf Professor Web.




  Kommentare (4)
 1 Geschrieben von: flasher, am 18.05.2008 um 17:19
hallo liebe leute, 
 
ich habe die letzten jahre mit css, flash, xhtml,dhtml, javasript, php und msql gearbeitet und kehre 2008 zurück. frame seiten werden mittlerweile wieder bevorzugt behandelt :-). frames sind optimal für suchmaschienen und entgegen der weitläufigen meinung sehr behinderten freundlich.  
viele grüße einer mit 12 jahren internet erfahrung.
 2 Geschrieben von: Armin Vieweg, am 18.05.2008 um 21:03
Das ist interessant. Das die Seiten für Suchmaschinen optimal sind kann ich mir noch gut vorstellen, da jeder Content ohne ein Gerüst innerhalb der HTML-Dateien vorhanden ist. 
 
Das ist dann auch gut für Programme die bspw. den Text der Website vorlesen, da Navigation und sonstiges drumherum ignoriert wird. 
 
Aber es schränkt doch sehr ein, von daher glaube ich nicht, dass wir den Siegeszug der Frames wieder feiern werden. Wahrscheinlicher ist eine Einheitliche Definierung der einzelnen Elemente. 
 
Interessant ist es aber allemal! 
Danke.
 3 Geschrieben von: André, am 17.07.2010 um 15:18
Zitat: "[iFrames] finden auch heute noch rege Verwendung, obwohl man eigentlich mit AJAX, also dem asynchronen Nachladen von Inhalten, viel besser arbeiten könnte." 
 
Das stimmt in dieser Absolutheit definitiv nicht. Denn: Ohne Javascript kein AJAX. Ohne Javascript aber sehr wohl iFrames -- z. B. zum Versenden von Formularen, ohne die Formularseite zu verlassen bzw. neu zu laden. Im iFrame kann anschließend eine Meldung über Erfolg oder Nichterfolg des Formularversandes ausgegeben werden. 
 
Jetzt, wo es praktisch keinen Browser mehr gibt, der iFrame nicht versteht, werden iFrames für mich erst richtig interessant. Und selbst wenn jemand mit einem solchen Browser das Formular versendet, bekommt er eine anständige Meldung -- wenn auch in einem neuen Browserfenster. 
 
Und ausdrücklich aus genau diesen Gründen ist das iframe-Element auch im HTML5-Standard enthalten. Und da möge es bitte auch für alle Zeiten bleiben. Denn mich interessiert nicht, was wer warum für modern (AJAX) oder unmodern (iframes) hält, sondern womit sich ein konkretes Problem am besten lösen lässt. 
 
André
 4 Geschrieben von: Armin Vieweg, am 18.07.2010 um 15:47
Natürlich muss man bei der Verwendung von JavaScript entsprechende Fallback-Seiten haben. Für den (Miss-)erfolg eines Formulars gäbe es dann z.B. extra Seiten, die nicht aufgerufen werden, wenn JavaScript aktiviert ist (also bei ca. 95% der Webuser). Diese Seiten hast Du aber auch bei der iFrame-Lösung - von daher... 
 
Aber es hindert Dich natürlich niemand daran weiterhin iFrames zu nutzen, auch wenn sich dieser Artikel eigentlich primär den alten Frameset-Konstrukten widmet. 
 
Armin
Letzte Aktualisierung ( Donnerstag, 24. Januar 2008 )
 
< Zurück   Weiter >