Dank der Frame-Technologie (auf Deutsch "Rahmen") ist es mittlerweile möglich mehrer HTML-Seiten in verschiedenen Zonen (oder Rahmen)anzuzeigen.
Die Frames gehören nicht zu den Spezifizierungen von HTML 3.x, man muss also seine Seite als in HTML 4,0 geschrieben deklarieren!
Um eine Webseite zu schaffen die Rahmen enthält, reicht es eine Datei zu erstellen die die Konfiguration der Rahmen enthält: diese HTML-Datei weist die Besonderheit auf, dass sie einen Behälter <FRAMESET> an Stelle des Kennzeichensatzes <BODY> hat. Dieser Tag definiert die Rahmen durch ihre Dimension ausgedrückt in Pixels oder in Prozenten (%).
Sehen wir uns drei Beispiele an:
<FRAMESET COLS="20%, 80%"> <FRAME SRC="frame1.htm" NAME="gauche"> <FRAME SRC="frame2.htm" NAME="droite"> </FRAMESET>
<FRAMESET ROWS="20%, 80%">
<FRAME SRC="frame1.htm" NAME="haut">
<FRAME SRC="frame2.htm" NAME="bas">
</FRAMESET>
<FRAMESET COLS="20%, 80%">
<FRAME SRC="frame1.htm" NAME="gauche">
<FRAMESET ROWS="50%, 50%">
<FRAME SRC="frame2.htm" NAME="droit_haut">
<FRAME SRC="frame3.htm" NAME="droit_bas">
</FRAMESET>
| Attribut | Wert | Aktion |
|---|---|---|
| Rows | Prozentsatz (zwischen 1 und 100) Wert in Pixel Indem man nur einen Wert festlegt und dem Anderen den Wert * gibt, passt sich der Wert automatisch an |
horizontaler Rahmen |
| Cols | Prozentsatz (zwischen 1 und 100) Wert in Pixel Indem man nur einen Wert festlegt und dem Anderen den Wert * gibt, passt sich der Wert automatisch an |
vertikaler Rahmen |
| Frameborder | YES NO |
Gibt an ob der Rahmen einen Rand hat oder nicht |
| Border=n | n ist ein Wert der die Breite des Randes definiert | die Breite des Randes angeben |
| Bordercolor | Name der Farbe Wert der Farbe ausgedrück in Hexadezimale |
die Farbe des Randes angeben |
| Framespacing=n | n ist ein Wert der den Raum zwischen den Rahmen definiert | den Raum zwischen den Rahmen angeben |
Mit dem Tag <FRAME> kann man einen oder mehrere Rahmen in dem Tag <FRAMESET> definieren
| Attribut | Wert | Aktion |
|---|---|---|
| Src | URL | Definiert den Platz der Seite die in dem Rahmen angezeigt werden soll |
| Name | "nom" | Definiert einen Namen mit dem man ein anderes Dokument in dem Rahmen anzeigen kann, dank des Attributes Target |
| Marginwidth=n | n ist eine ganze Zahl die die Anzahl der Pixel angibt | Breite des seitlichen Randbereichs |
| Marginheight=n | n ist eine ganze Zahl die die Anzahl der Pixel angibt | Breite des oberen und unteren Randbereichs |
| Frameborder | YES NO |
Legt fest ob die Rahmen eine Rand erhalten oder nicht |
| Border=n | n ist eine ganze Zahl die die Anzahl der Pixel angibt | Grösse des Raums zwischen den Rahmen (ausschliesslich für Netscape) |
| Noresize | (Keine) | Es ist dem Benutzer verboten die Rahmen neu zu dimensionieren (Dies ist kein standardmässiger Vorgabewert) |
| Scrolling | YES NO AUTO |
Erlaubt oder nicht die Anzeige eines Rollbalkens (Auto lässt den Brower über seine Nützlichkeit entscheiden) |
Man verwendet die Tags <NOFRAMES> und </NOFRAMES> mit denen ein HTML-Texte spezifiziert wird der angezeigt werden soll, falls der Browser die Frames nicht anzeigen kann. Der Texte zwischen den Tags <NOFRAMES> und </NOFRAMES> muss demnach die Tags <BODY> ... </BODY> enthalten.
Beispiel:
<FRAMESET COLS="20%, 80%">
<FRAME SRC="frame1.htm" NAME="gauche">
<FRAME SRC="frame2.htm" NAME="droite">
</FRAMESET>
<NOFRAMES> <BODY> Diese HTML-Seite benötig einen Browser der Frames anzeigt, wir bitte um Entschuldigung. </BODY> </NOFRAMES>
Um in einem der Rahmen Links anzuzeigen, reicht es das Attribut target in dem Tag zu verwenden <A HREF ..> um den Namen des Rahmen anzugeben der in dem Tag <FRAME> durch das Attribut NAME spezifiziert ist.
Zum Beispiel:
<A HREF="page.htm" TARGET="gauche">
| Wert | Aktion |
|---|---|
| _self | Zeigt das Ziel in dem gleichen Rahmen wie den Link an |
| _parent | Zeigt das Ziel in dem darüber gelegenen Rahmen an |
| _blank | Zeigt das Ziel in einem neuen Fenster an |
| _top | Zeigt das Ziel in dem ganzen Fenster des Browsers an |