Experiment: Kohlkopf

+Übersicht
+Tools & Links
+HTML-Allgemein
+Tabellen & Layer
+JavaScript/DOM
+CSS
-Frames
Frameinhalt ändern
Frameset bookmarken
Seitentitel ändern
Frameset nachladen
Frameset definieren
Frames-PRO & KONTRA
Frameset verhindern
+Diverses


 
Valid CSS!
Valid HTML 4.01!
 
 
zum Provisorium

 > Übersicht der Fragen
   > Frames
     > Frameset definieren
 
 
Wie definiere ich ein Frameset und wie kann ich es formatieren?
 

Ein Beispiel für ein Frameset mit 2 horizontalen Frames (Eigenschaft rows) untereinander:

Beispiel #1
2 horizontale Frames

Quelltext der das Frameset definierenden Seite:


<html>
<head>
<title>2 horizontale Frames</title>
</head>
<frameset rows="30%,70%">
   <frame src="oben.html">
   <frame src="unten.html">
</frameset>
<noframes>
Ihr Browser unterst&uuml;tzt keine Frames!
   <a href="alternativeSeite.html">
     Hier gehts trotzdem weiter...
   </a>
</noframes>
</html>

Erläuterung:

Das Dokument enthält ein <frameset>-Element. Durch die Angabe des Attributes rows wird dieses in 2 Reihen unterteilt.
Dem row- Attribut wurden die Werte "30%,70%" zugewiesen, welche die Höhe der darin definierten Frames bestimmt. Im Beispiel wurden prozentuale Werte benutzt, welche sich auf die Gesamtgröße des Fensters beziehen.
Weiterhin befindet sich im Dokument ein <noframe>- Element. Innerhalb dieses Dokuments können Informationen für Benutzer von Browsern notiert werden, welche keine Frames interpretieren. Im Beispiel erfolgt ein Hinweis auf eine alternative Seite.

Beispiel #2
Frameset mit 1 vertikalem Frame (Eigenschaft cols) links und 2 horizontalen Frames (Eigenschaft rows) untereinander rechts daneben:

Quelltext der das Frameset definierenden Seite:


<html>
<head>
<title>2 horizontale Frames</title>
</head>
<frameset cols="200,*">
   <frame src="links.html">
   <frameset rows="150,*">
     <frame src="oben.html">
     <frame src="unten.html">
   </frameset>
</frameset>
<noframes>
Ihr Browser unterst&uuml;tzt keine Frames!
   <a href="alternativeSeite.html">
     Hier gehts trotzdem weiter...
   </a>
</noframes>
</html>

Erläuterung:

Das Dokument enthält ein <frameset>-Element. Durch die Angabe des Attributes cols wird dieses in 2 Spalten unterteilt.
Dem cols- Attribut wurden die Werte "200,*" zugewiesen, welche die Höhe der darin definierten Frames bestimmt. Im Beispiel erhält das erste Frame eine fixe Breite von 200 Pixeln, während das zweite Frame durch die Attributzuweisung * den Rest des verfügbaren Platzes einnimmt.
Während in das erste Frame die Seite links.html geladen wird, wird das zweite Frame mit einem weiteren <frameset>- Element nochmals in 2 Reihen unterteilt.


tip   Wie man im zweiten Beispiel sieht, kann man Framesets verschachteln.
Allerdings sollte man das nicht übertreiben, da so mancher Browser (zB. Netscape 4) die Website bei zu vielen Verschachtelungen nicht mehr richtig anzeigt und unter Umständen sogar mit einem Crash reagiert.

Neben den in den Beispielen bereits erwähnten Eigenschaften können <frame>'s und <frameset>'s weitere Eigenschaften aufweisen:

Eigenschaften des <frame>- Elements:

scrolling -Legt fest, ob das Frame Scrollbalken haben soll, mögliche Angaben:
  • scrolling="yes"
    (ja)
  • scrolling="no"
    (nein)
  • scrolling="auto"
    (bei Bedarf)
name -frei wählbarer Name, dient zum Ansprechen des Frames bei Hyperlinkzielen und mit Javascript.  
noresize -unterbindet die manuelle Änderung der Framegröße  
frameborder -Anzeigen des Rahmens, mögliche Angaben:
  • frameborder="0"
    (nein)
  • frameborder="1"
    (ja)
src -URL des innerhalb des Frames anzuzeigenen Dokuments  
marginwidth -Abstand des Frameinhalts vom rechten und linken Framerand in Pixel  
marginheight -Abstand des Frameinhalts vom oberen und unteren Framerand in Pixel  

Eigenschaften des <frameset>- Elements:

rows -Aufteilung eines Framesets in Reihen  
cols -Aufteilung eines Framesets in Spalten  
border -Rahmendicke in Pixel  
frameborder -Anzeigen eines Rahmens, mögliche Angaben:
  • frameborder="0"
    (nein)
  • frameborder="1"
    (ja)
framespacing -Abstand zwischen den Frames in Pixel  
bordercolor -Rahmenfarbe der Frames  


tip   Die Attribute frameborder, border, framespacing und bordercolor innerhalb des <frameset>- Elements gehören nicht zum HTML- Standard. Um in allen Browsern konsequent die Anzeige der Rahmen abzustellen, ist folgende Vorgehensweise notwendig:
 

<frameset border="0"frameborder="0"framespacing="0">

welche aufgrund der Verwendung der nicht standardkonformen Attribute allerdings ungültigen HTML-Code erzeugt.

Eine umfangreiche Beschreibung zum Thema Frames findest du bei SelfHTML:Frames definieren


 
 
   
beantwortet von
MB & doktormolle
 
 
zum proVisorium Impressum