Frames
Opbouw van frames
en pagina met frames bestaat altijd uit een aantal HTML-pagina's:
- De pagina waarin de frames worden gedefinieerd.
- De pagina's die in deze definitie worden genoemd.
Je kunt frames ook nesten, d.w.z. frames binnen frames gebruiken.
<html>
<head>
<title>Frames Voorbeeld</title>
</head>
<frameset rows="57,*" frameborder="0"
border="0" framespacing="0">
<frame src="kop.html" name="kop"
scrolling="no" marginheight=0 marginwidth=0>
<frame src="inhoud.html" name="inhoud">
</frameset>
</html>
Zoals je ziet worden in deze code twee HTML-pagina's aangeroepen: kop.html en inhoud.html. In het eerste bestand staat de navigatie, die voortdurend in beeld blijft. In de tweede staat de inhoud. De inhoud wisselt doordat de gebruiker een link in kop.html aanklikt. Klik je bijvoorbeeld op "klikken dan", dan wordt het bestand inhoud2.html geladen op de plaats waar daarvoor nog inhoud.html stond.
In de frameset worden maar liefst drie waarden op nul gezet. Dit is nodig om te voorkomen dat er een randje van 1 pixel groot tussen de frames verschijnt. Als je dit gebruikt, ben je daar vanaf in zowel Netscape als MSIE.
In het voorbeeld is sprake van rows, rijen, die zorgen voor een horizontale verdeling van het scherm. Voor een verticale verdeling gebruik je cols:
<frameset cols="200,*" frameborder="0" border="0" framespacing="0"> <frame src="links.html" name="links" scrolling="no" marginheight=0 marginwidth=0> <frame src="inhoud.html" name="inhoud"> </frameset>
Gebruik src (source, oftewel bron) om aan te geven in welk frame je bestand moet komen. Zoals je ziet hebben beide frames een name. Dat is nodig om een link in het goede frame te laden. Dat doe je als volgt met het attribuut target:
<a href="jouwlink.html"
target="naamframe">Jouw link</a>
Andere toepassingen van target:
"_top"- De link wordt getoond op het hele scherm van je browser. Handig voor externe links die anders in een frame getoond zouden worden. Dit is de beste manier om het nesten van frames op te lossen.
"_blank"- De link wordt geopend in een nieuwe browser. De pagina waar je vandaan kwam, blijft op de achtergrond actief.
"_self"- Laadt de link in het frame waar de link zelf in staat. Op die manier kan je keuzemenu's stapelen. Eerst zoiets als een lijst met uitgaansmogelijkheden. Je kiest voor restaurants, waarna in hetzelfde frame een menu'tje wordt geopend met de prijsklassen: goedkoop, betaalbaar en schoftig duur, enzovoort.
"_parent"- De link wordt getoond met de frames van de vorige
<frameset>.
Verwijzen alle links in een frame naar hetzelfde target? Maak dan gebruik van
<base target>. Je neemt dit op in de <head> van je bestand. Dan kun je target bij de links zelf weglaten.
<base target="jouwframe">

