Informatik :: HTML :: Frames
Mit Frames (Frame=Rahmen) kann der Bildschirm in mehrere rechteckige Anzeigefenster eingeteilt werden.
Mehrere zusammengehörige Frames bilden ein sogenanntes Frameset (Satz von Fenstern).
Beispiel:
Die entscheidende Anweisung zur Festlegung des Framesets lautet:
<frameset>
...
</frameset>
Dieser Bereich muss anstatt des <body>-Bereiches im HTML-Dokument erscheinen.
ROWS = "Zahl1,Zahl2,Zahl3,..." | - Höhe der horizontalen Frames (Zeilen)
in Pixel oder %
- Anzahl der Zahlen = Anzahl der horizontalen Frames; - anstelle einer Zahl ist auch die Wildcard * möglich (Rest) |
|
oder (ausschließendes) | ||
COLS = "Zahl1,Zahl2,Zahl3,..." | - Breite der vertikalen Frames (Spalten)
in Pixel oder %;
- Anzahl der Zahlen = Anzahl der vertikalen Frames; - anstelle einer Zahl ist auch die Wildcard * möglich (Rest) |
|
FRAMEBORDER ="0" | bei IE | - Frame ohne Rahmen |
BORDER="0" | bei Netscape | |
FRAMESPACING="Zahl" | - Abstand zwischen den Frames in Pixel |
Nach dem einleitenden <frameset>-Tag erfolgt die Definition der einzelnen Frames durch <frame> bzw. ein weiteres Frameset.
Syntax | Erklärung |
---|---|
<frameset COLS="20%,*">
<frame> <frameset ROWS="30%,50%,*"> <frame> <frame> <frame> </frameset> </frameset> |
2 Spalten (20% und 80% breit)
1. Spalte 2. Spalte in 3 Zeilen (30%, 50% und 20% hoch) 1. Zeile 2. Zeile 3. Zeile Ende 2. Spalte Ende Bildschirm |
In jedem einzelnen Frame kann nun eine HTML-Datei gelesen werden, d.h. insgesamt so viele Dateien gleichzeitig, wie Frames vorhanden sind.
Damit ergibt sich der Vorteil bei mehreren Webseiten des gleichen Projektes, dass sich wiederholende Inhalte (z.B. ein Inhaltsverzeichnis) in einem Frame beibehalten werden können, während in einem anderen Frame ständig wechselnde Seiten gezeigt werden.
Dies spart Ressourcen und ist außerdem für den Nutzer übersichtlicher.
SRC = "Pfad/Dateiname" | Lesen der Datei im entsprechenden Frame | |
NAME="Framename" | Benennen des Frames, um ihn als Zielort für andere Dateien verfügbar zu machen |
|
BORDER="Pixelzahl" | Rahmenstärke | |
NORESIZE | Größe des Frames kann auf der Seite nicht verändert werden | |
SCROLLING = "AUTO | YES | NO" | Frame bekommt bei Bedarf (Voreinstellung) | immer | nie eine Scroll-Leiste | |
MARGINWIDTH = "Pixelzahl" | Abstand des Frame-Inhalts zum linken und rechten Frame-Rand | |
MARGINHEIGHT = "Pixelzahl" | ... zum oberen und unteren Frame-Rand |
Soll eine referenzierte Datei nicht im selben Frame angezeigt werden, so muss dies dem Verweis "mitgeteilt" werden.
Dies geschieht durch das Attribut TARGET (von Ziel).
Beispiele:
<a HREF="datei.html" TARGET="main"> ... </a> | die Datei wird im Frame mit dem Namen main angezeigt |
<a HREF="datei.html" TARGET="_BLANK"> ... </a> | die Datei wird in einem neuen Browserfenster angezeigt |
<a HREF="datei.html" TARGET="_SELF"> ... </a> | die Datei wird im selben Frame angezeigt (Voreinstellung) |
<a HREF="datei.html" TARGET="_PARENT"> ... </a> | die Datei wird im übergeordneten Frame angezeigt |
<a HREF="datei.html" TARGET="_TOP"> ... </a> | die Datei wird im obersten Frame angezeigt |
Möchten Sie, dass alle in einer HTML-Datei enthaltenen Verweise zu einem bestimmten anderen Frame-Fenster führen, so ist das durch die Anweisung <base TARGET=...> möglich, die im Kopf notiert werden muss.
Unfaire Schaufenster-Effekte:
Mit Hilfe von Frames wäre es möglich, auch fremde WWW-Seiten innerhalb eines Frame-Fensters im eigenen Web-Projekt darzustellen.
Dies ist jedoch sehr problematisch, denn auf diese Weise verkommen fremde WWW-Seiten zu "Schaufenstern" innerhalb des eigenen Web-Projekts.
Das ist eine unfeine Geste gegenüber den Fremdanbietern und wird inzwischen bei groben Verstößen geahndet, weil es das eigene Web-Projekt in den Augen des Anwenders als "Mega-Projekt" erscheinen läßt.
Wenn du also innerhalb eines Frame-Projekts auf fremde Seiten verweisen willst, so solltest du mittels <a href="http://..." target = "neu"
ein neues Browserfenster bzw. einen neuen -tab öffnen.
Aufgabe 1:
Erstelle folgendes Frameset (Datei 08_Frames1.html)!
Aufgabe 2:
Erstelle folgendes Frame-Projekt:
Startdatei 08_Frames2.html liefert: | ![]() |
Nach Mauseklick auf Fußball: | ![]() |
Nach Mauseklick auf Handball: | ![]() |