HTML/Elemente/frame

Aus SELFHTML-Wiki
< HTML‎ | Elemente
Wechseln zu: Navigation, Suche

Achtung.svg Das frame-Element dient dazu Teile von Webseiten auszulagern. Netscape führte diese Technik 1996 ein, mit der im Bildschirm mehrere Dateien gleichzeitig angezeigt werden konnten. Dies ermöglichte z. B. eine Navigation in einem Bereich und einen Bereich, der die wechselnden Inhaltsdokumente aufnahm.

Beachten Sie: Das frame-ELement ist in HTML5 als missbilligt eingestuft.
Empfehlung: Benutzen Sie stattdessen das iframe-Element. Wenn Sie Teile der Seite auslagern wollen, sind serverseitige Techniken besser geeignet.

Weblinks

W3C: HTML/Elements/frame


Prinzip

Beispiel ansehen …
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
  <frameset cols="1000, *">
    <frame src="FRAMESET_navigation.html" name="navigation">
    <frame src="FRAMESET_home.html" name="in">
  </frameset>
</html>

Das Attribut cols legt die Spalten eines Framesets fest. In diesem Beispiel werden zwei Spalten definiert. Die erste Spalte erhält eine Breite von 200 Pixeln, durch * erhält der zweite Frame automatisch den Rest der Breite des Browserfensters. Die gleiche Syntax wird für das Festlegen von Zeilen (rows) verwendet.

In das Frameset werden die zwei benötigten Frames eingebunden. Über das Attribut src werden die verwendeten Ressourcen bestimmt.


Nachteile

Frames wurden Ende des letzten Jahrtausends fleißig verwendet, als Provider Möglichkeiten des serverseitigen Zusammenbaus von Websites nur selten anboten. Heute stellen fast alle Provider mindestens eine serverseitige Sprache zur Verfügung, welche den traditionellen Bedarf für Frames obsolet machen.

Frames haben eine Reihe von Nachteilen:

Durch die Trennung in mehrere Dokumente …

  • konnten Nutzer keine Lesezeichen auf Unterseiten setzen, da Browser nur die Adresse des aufgerufenen Framesets und nicht der geladenen Inhaltsframes anzeigten, konnten diese durch unerfahrene Browseranwender nicht in die Bookmarks aufgenommen werden
  • konnten Seiteninhalte nicht komplett ausgedruckt werden
  • wurden (über Suchmaschinen gefundene) Seiteninhalte ohne Navigation aufgerufen

Als Lösung benötigte man ein JavaScript, das das Frameset nachlädt, wenn eine Unterseite alleine geöffnet wurde.

Des Weiteren konnten die verschiedenen Dokumente …

  • nicht mit CSS positioniert werden, sodass die Ansicht nicht für Geräte mit kleinem Viewport angepasst werden kann.