HTML-Dateien selbst erstellen: Inhaltsverzeichnis


Netscape ab V2.0MS IE ab V3.0 Frames

 Über Frames
 Frame-Sets definieren
 Frames definieren
 Eigenschaften von Frames definieren
 Namen von Frames definieren
 Verweise zu anderen Frames notieren
 Anzeigebeispiel: Frames
(Der Verweis führt zu der Dokumentstelle, an der das Einrichten eines Zugriffszählers beschrieben wird. Mit der Back-Funktion des Browsers kehren Sie hierher zurück)


Über Frames

Mit Hilfe von Frames können Sie den Anzeigebereich des Browsers in verschiedene, frei definierbare Segmente aufteilen. Jedes Segment kann eigene Inhalte enthalten. Die einzelnen Anzeigesegmente (also die Frames) können wahlweise einen statischen Inhalt (= "non scrolling regions") oder einen wechselnden Inhalt haben. Verweise in einem Frame können Dateien aufrufen, die dann in einem anderen Frame angezeigt werden.

Frames stellen einen Quantensprung in HTML dar. Frames sind kein weiteres Element, um typische Aufgaben der Textverarbeitung zu bewältigen, sondern ein Element, das die spezifischen Eigenschaften der Bildschirmanzeige konsequent nutzt. Frames eröffnen völlig neue Möglichkeiten, um Information hypertextuell (d.h. nicht-linear) aufzubereiten.

Frames werden ab Netscape 2.0 und ab MS Internet Explorer 3.0 unterstützt. Angaben der Firma Netscape zufolge ist das Frame-Konzept mit dem WWW-Konsortium abgesprochen und als künftiger offizieller Bestandteil von HTML vorgesehen.

Frames stellen an das Design von HTML-Seiten besonders hohe Ansprüche. Einige Tips, die Sie beachten sollten, finden Sie im Abschnitt  Umgang mit Frames.

Ein Beispiel für den Einsatz von Frames

Die Abbildung stellt den Inhalt des gesamten Anzeigefensters des Browsers schematisch dar. Wie Sie unschwer erkennen können, erlaubt das Frame-Konzept Hypertext-Funktionalitäten, die bislang nur mit Hilfe professioneller Hypertext-Systeme (Guide, Augment usw.) realisierbar waren.

Weitere Möglichkeiten von Frames

In jedem Frame stehen alle Anzeige-Features zur Verfügung - so ist es z.B. denkbar, in einem Frame Textinformation anzuzeigen, während in einem anderen Frame gleichzeitig ein passendes Video abläuft.

Mit Frames in Verbindung mit Formularen können Sie anwenderfreundliche Datenbank-Oberflächen realisieren. So können Sie z.B. in einem linken Frame ein Formular für Sucheingaben zur Verfügung stellen, während rechts daneben in einem anderen Frame die jeweils aktuellen Suchergebnisse präsentiert werden.


 Seitenanfang


Netscape ab V2.0MS IE ab V3.0 Frame-Sets definieren

Mehrere zusammengehörige Frames bilden ein Frame-Set. Ein Frame-Set definieren Sie anstelle des herkömmlichen  body-Tags. Wenn Sie in einer HTML-Datei ein Frame-Set definieren, sieht das Grundgerüst der HTML-Datei folgendermaßen aus:

Beispiel


  <html>
  <head>
  <title>Frame-Test</title>
  </head>
  <frameset ...>
     ... Frame-Definitionen ...
  </frameset>
  </html>

<frameset ...> leitet die Definition eines Frame-Sets ein. Dahinter folgen die Definitionen der einzelnen Frames. </frameset> schließt die Definition des Frame-Sets ab.

Anzeigefenster aufsplitten mit Frame-Sets

Beim Definieren von Frame-Sets bestimmen Sie auch, wie das Anzeigefenster aufgeteilt werden soll. Dabei müssen Sie sich das Anzeigefenster wie den leeren Rahmen einer Tabelle vorstellen. Damit die Tabelle Gestalt annimmt, müssen Sie Reihen und Spalten definieren. Die Definition der Reihen und Spalten erfolgt bei der Definition der Frame-Sets. Was in den einzelnen Zellen (Frames) stehen soll, geben Sie bei der Definition der einzelnen Frames an.

Beispiel 1


  <frameset rows="20%,80%">
    ... Dadurch ergeben sich zwei Frames, deren Inhalt hier bestimmt wird...
  </frameset>

Beispiel 2


  <frameset cols="40%,60%">
    ... Dadurch ergeben sich zwei Frames, deren Inhalt hier bestimmt wird...
  </frameset>

Beispiel 3


  <frameset cols="40%,60%">
       ... Dadurch ergibt sich zwei Frames, wobei der Inhalt des ersten Frames hier bestimmt wird...
    <frameset rows="20%,80%">  
       ... Dadurch ergeben sich noch mal zwei Frames, deren Inhalt hier bestimmt wird...
    </frameset>   
  </frameset> 

Durch die Angabe rows= (Prozent) im einleitenden Frameset-Tag bestimmen Sie die "Zeilen" und deren Höhen. Die Höhenangaben der einzelnen Zeilen trennen Sie durch Kommata. Anstelle der Prozentangaben können Sie auch absolute Zahlenwerte (Anzahl in Pixel) benutzen, z.B. rows="120,520". Im Zusammenhang mit absoluten Zahlenwerten können Sie auch eine Wildcard verwenden. So bewirkt z.B. z.B. rows="120,*,120" ein Set, bestehend aus drei Reihen für Frames, wobei die erste und die letzte Zeile jeweils 120 Pixel hoch sind (z.B. für Kopf- und Fußzeilen), während die Höhe der mittleren Reihe, markiert durch einen Stern, variabel ist und durch die Größe des Anzeigefensters beim Anwender bestimmt wird.

Durch die Angabe cols= (Prozent) im einleitenden Frameset-Tag bestimmen Sie die "Spalten" und deren Breiten. Hierbei gelten die gleichen Regeln wie bei den "Zeilen".

Alle Angaben hinter rows= und cols= müssen in Anführungszeichen stehen.

Wenn Sie Anordnungen wie in Beispiel 3 erreichen wollen, müssen Sie mehrere, verschachtelte Frame-Sets definieren. Gehen Sie dabei hierarchisch vor. In Beispiel 3 besteht die erwünschte Gesamtanordnung zunächst einmal aus zwei Spalten. Daß die rechte Spalte nochmals unterteilt werden soll, ist zunächst sekundär. Als erstes definieren Sie in diesem Fall also ein Frame-Set mit zwei Spalten, in Beispiel 3 mit <frameset cols="40%,60%">. Da Ihre gedachte Tabelle in der rechten Spalte in zwei Zeilen unterteilt werden soll, brauchen Sie im nächsten Schritt Angaben zu den Zeilen. Die rechte Spalte, die in Beispiel 3 zwei Zeilen enthalten soll, definieren Sie durch die entsprechenden Angabe <frameset rows="20%,80%">.

Im Zusammenhang mit JavaScript kann in einem einleitenden Tag <frameset ... > auch der  Event-Handler onLoad= vorkommen.


 Seitenanfang


Netscape ab V2.0MS IE ab V3.0 Frames definieren

Nachdem Sie durch die Definition von Frame-Sets geeignete Segmente des Anzeigefensters bestimmt haben, geben Sie mit der Definition der Frames an, was in den einzelnen Segmenten angezeigt werden soll. Ferner können Sie verschiedene Eigenschaften für die Segmente bestimmen.

Beispiel


  <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//EN" "html.dtd">
  <html>
  <head>
  <title>Frame-Test</title>
  </head>
  <frameset cols="40%,60%">
       <frame src="verweise.htm">
    <frameset rows="20%,80%">  
       <frame src="kurzinfo.htm">
       <frame src="langinfo.htm">
    </frameset>   
  </frameset> 
  </html>

Mit <frame src=> "Dateiname" definieren Sie innerhalb eines Frame-Sets den Inhalt des bzw. der zugehörigen Frames. Bei der Adressierung der Dateien, die in einem Frame angezeigt werden sollen, gelten die gleichen Regeln wie bei der Referenzierung von  Grafiken.

Definieren Sie für jede "Zelle" Ihrer gedachten Tabelle einen Frame (vgl. Beispiel).

Wenn Sie zu Beginn noch keinen Inhalt in einem Frame anzeigen wollen, lassen Sie die Angabe src= einfach weg und notieren ein nacktes <frame>. Im obigen Beispiel könnten Sie z.B. die beiden rechten Frames zunächst leer lassen, bis der Anwender aus dem linken Frame einen Verweis ausgewählt hat.

Wenn Sie einen Frame ganz leer lassen wollen, notieren Sie anstelle von <frame> einfach <noframe>.


 Seitenanfang


Netscape ab V2.0MS IE ab V3.0 Eigenschaften von Frames definieren

Jeder Frame wird, abhängig von der verwendeten Benutzeroberfläche des Anwenders, in einem eigenen Fenster angezeigt. Solche Fenster können verschiedene Eigenschaften haben: sie können Scroll-Leisten haben oder nicht, und sie können einen Mindestabstand zwischen Fensterrahmen und Fensterinhalt haben.

Scrollbare/nicht scrollbare Fenster

Beispiel


  <frameset cols="40%,60%">
     <frame src="verweise.htm" scrolling=yes>
     <frame src="bilder.htm" scrolling=no>
  </frameset>

Durch die Angabe scrolling=yes im Definitions-Tag eines Frames erzwingen Sie, daß das Anzeigefenster des Frames in jedem Fall Scroll-Leisten besitzt. Durch die Angabe scrolling=no verhindern Sie dies. Wenn Sie das Scrollen des Fensterinhalts verhindern, können Inhalte, die größer sind als das Fenster, nicht vollständig angezeigt werden.

Per Voreinstellung stattet Netscape seine Frame-Fenster dann mit einer Scroll-Leiste aus, wenn der Fensterinhalt es erfordert.

Mindestabstände zwischen Fensterrand und Fensterinhalt

Beispiel


  <frameset cols="40%,60%">
     <frame src="verweise.htm" scrolling=yes marginwidth=5 marginheight=12>
     <frame src="bilder.htm" marginwidth=5 marginheight=12>
  </frameset>

Durch die Angabe marginwidth= (Pixel) im Definitions-Tag eines Frames bestimmen Sie den Abstand zwischen rechtem bzw. linkem Fensterrand und dem Fensterinhalt. Durch die Angabe marginheight= (Pixel) bestimmen Sie den Abstand zwischen oberem bzw. unterem Fensterrand und dem Fensterinhalt.

Unveränderbare Fenstergröße

Frame-Fenster sind normale Dokument-Fenster innerhalb des Browser-Hauptfensters. Solche Dokument-Fenster kann der Anwender normalerweise in der Größe verändern. Sie können dies aus "regietechnischen" Gründen verhindern.

Beispiel


  <frameset cols="40%,60%">
     <frame src="verweise.htm" scrolling=yes marginwidth=5 marginheight=12>
     <frame src="bilder.htm" marginwidth=5 marginheight=12 noresize>
  </frameset>

Durch die Angabe noresize im Definitions-Tag eines Frames verhindern Sie, daß der Anwender die Größe des Frame-Fensters verändern kann. Es genügt, die Angabe bei einem Frame zu notieren. Benachbarte Frames können dann auch nicht bewegt werden.

MS IE ab V3.0 Frames ohne sichtbare Fensterrahmen

Der MS Internet Explorer unterstützt Frames ohne sichtbare Fensterrahmen. Dadurch wirken die Frame-Fenster wie nahtlos aneinander gefügte Flächen am Bildschirm.

Beispiel


  <frameset cols="40%,60%">
     <frame src="verweise.htm" frameborder=0>
     <frame src="bilder.htm" frameborder=0>
  </frameset>

Durch die Angabe frameborder=0 im Definitions-Tag eines Frames erreichen Sie, daß die Rahmen der Frame-Fenster unsichtbar bleiben.


 Seitenanfang


Netscape ab V2.0MS IE ab V3.0 Namen von Frames definieren

Frames können Namen erhalten. Einen benannten Frame können Sie dann in Verweisen adressieren, d.h. Sie können beim Verweis angeben, daß das Verweisziel in einem bestimmten (benannten) Frame angezeigt werden soll.

Beispiel


  <frameset cols="40%,60%">
     <frame src="verweise.htm">
     <frame src="bilder.htm" name="Anzeigefenster">     
  </frameset> 

Durch die Angabe name= "Fenstername" im Definitions-Tag eines Frames weisen Sie dem Frame einen Namen zu. In Verweisen können Sie diesen Frame unter dem vergebenen Namen adressieren.
(siehe  Verweise zu Frames notieren)

Fensternamen müssen in Anführungszeichen stehen, dürfen nicht zu lang sein und nur aus Buchstaben, Ziffern und dem Unterstrichen bestehen. Bei selbst vergebenen Namen darf das erste Zeichen des Namens kein Unterstrich sein.

Reservierte Fensternamen

Folgende reservierte Fensternamen haben bei Verweisen eine spezielle Bedeutung:

_blank: Das Verweisziel wird in einem neuen Fenster angezeigt.

_self: Das Verweisziel wird im gleichen Fenster angezeigt wie der Verweis.

_parent: Das Verweisziel wird im übergeordneten Fenster angezeigt. Falls es kein übergeordnetes Fenster gibt, wird das Verweisziel im gleichen Fenster angezeigt wie der Verweis selbst.

_top: Das Verweisziel wird im ersten Fenster einer Fensterhierarchie angezeigt. Falls es kein übergeordnetes Fenster gibt, wird das Verweisziel im gleichen Fenster angezeigt wie der Verweis selbst.

(siehe  Verweise zu Frames notieren)


 Seitenanfang


Netscape ab V2.0MS IE ab V3.0 Verweise zu anderen Frames notieren

Sie können bei Verweisen zu anderen Dateien festlegen, daß die adressierte Datei in einem bestimmten Frame angezeigt wird.

Beispiel


  <a href="info.htm" target="rechtes_Fenster">Verweis zum rechten Fenster</a>

Zur Adressierung eines Frames in einem Verweis notieren Sie einen gewöhnlichen  Verweis-Befehl. Im einleitenden Tag notieren Sie jedoch die zusätzliche Angabe target= (Name des Frame-Fensters). Der Name des Fensters muß in Anführungszeichen stehen.

Sie können hinter target= sowohl selbst definierte Fenster als auch reservierte Fensternamen angeben.

Mit Hilfe von JavaScript können Sie auch den Inhalt mehrerer Frame-Fenster mit einem einzigen Verweis gleichzeitig ändern. Lesen Sie dazu das Beispiel  Zwei Frames gleichzeitig ändern.

Alle Verweise einer Datei in einem bestimmten anderen Frame anzeigen

Sie können in einer HTML-Datei angeben, daß alle darin enthaltenen Verweise zu einem bestimmten anderen Frame-Fenster führen. So sparen Sie sich die Arbeit, bei jedem Verweis die gleiche Frame-Adressierung mit anzugeben. Besonders sinnvoll ist dies, wenn Sie z.B. ein linkes Fenster mit sehr vielen Verweisen haben, deren Verweisziele im rechten Fenster angezeigt werden sollen.

Beispiel


  <head>
    <base target="Rechtes_Fenster">
	....
  </head>

Das voreingestellte Frame-Fenster für Verweise können Sie im  Dateikopf einer HTML-Datei bestimmen. Dazu müssen Sie zwischen <head> und </head> die Anweisung <base target=...> notieren. hinter target= folgt der Name des gewünschten Frame-Fensters. Der Name des Fensters muß in Anführungszeichen stehen. (Siehe hierzu auch  Basisfenster für Verweise definieren).


 HTML-Dateien selbst erstellen: Inhaltsverzeichnis
 Seitenanfang

Blättern:
Style-Sheets (Dokumentvorlagen)  |  Farben definieren in HTML


© 1996  Stefan Münz