NIWO FAQ

NL.INTERNET.WWW.ONTWERP Frequently Asked Questions

Laatste wijziging: 1 januari 2000

Frames en marges

Bijdrage van Karst Lohman

Vragen over marges in combinatie met frames worden nogal eens gesteld in NIWO. Hieronder wordt uitgelegd hoe marges kunnen worden ingesteld, hoe je de inhoud van frames naadloos op elkaar kunt laten aansluiten, en hoe Netscape Navigator hierbij dwarsligt.

Een algemene uitleg over frames vind je in de frames handleiding van John Westera.

Marges instellen

Vind je dat andere marges dan de standaardmarges essentieel zijn voor je layout, dan kun je gebruik maken van de attributen marginheight="x" en marginwidth="y". Deze moeten worden toegevoegd aan het element <frame> in de frame bron.

Voorbeeld: <frame src="inhoud.htm" name="inhoud" marginheight="5" marginwidth="10">

Met dit voorbeeld worden vanaf Netscape Navigator 2 en Microsoft Internet Explorer 3 de marges ingesteld op een hoogte van 5 en een breedte van 10 pixels.

Frames naadloos laten aansluiten

Hieronder wordt in drie stappen uitgelegd hoe je het min of meer voor elkaar krijgt dat de inhoud van verschillende frames naadloos op elkaar aansluit.

1. De randen tussen de frames verwijderen

De randen, of borders, tussen de frames moeten een dikte van 0 pixels krijgen. Dit kan door de attributen framespacing="0", border="0" en frameborder="0" toe te voegen aan het element <frameset>.

Voorbeeld: <frameset cols="100,*" framespacing="0" border="0" frameborder="0">

Vanaf Navigator 3 en Internet Explorer 3 is er nu geen rand meer zichtbaar tussen de frames.

2. Een marge van 0 pixels instellen

De marges kunnen worden ingesteld op 0 pixels door in alle <frame> elementen de attributen marginheight="0" en marginwidth="0" op te nemen.

Voorbeeld: <frame src="inhoud.htm" name="inhoud" marginheight="0" marginwidth="0">

3. De marges in Netscape Navigator ook écht op elkaar laten aansluiten

Nadat je een marge van 0 pixels hebt ingesteld zou je verwachten dat de inhoud van de frames naadloos op elkaar aansluit. Helaas is dit in Navigator niet het geval. Er treden namelijk twee problemen op. Navigator houdt een marge aan van minimaal 1 pixel, en is bovendien erg onnauwkeurig met het pixelprecies in frames indelen van het scherm.

Die vervelende lijn van 1 pixel is voor Netscape Navigator 4+ weg te halen door marginheight="0" marginwidth="0" toe te voegen aan het <body> element van de pagina's die in de frameset geladen worden.

Voorbeeld: <body marginheight="0" marginwidth="0">

Een andere mogelijkheid is CSS. Een uitleg is te vinden in de frames handleiding van John Westera. Achtergrondafbeeldingen lopen overigens wel door en hebben geen last van 1 pixel tussenruimte. Om in Netscape Navigator 3 de lijn van 1 pixel te verdoezelen kan hiervan soms handig gebruik gemaakt worden.

Het tweede probleem waar Navigator je mee opzadelt is dat de browser niet erg nauwkeurig is met het verdelen van het scherm in frames. Wanneer je in een frame van 100 pixels breed met een marge van 0 pixels een afbeelding zet die precies 100 pixels breed is, dan zal een deel daarvan niet in het frame passen. De ervaring leert: hoe groter het formaat van het browserscherm, des te groter de afwijking van het formaat van het frame.

Bekijk deze pagina bijvoorbeeld eens met Netscape Navigator en maak je browservenster wat groter of kleiner. Je zult zien dat de afmetingen van het linker frame veranderen, terwijl hij een vaste breedte van 100 pixels heeft.

Een echte oplossing is hiervoor niet te geven. Belangrijk is dat je je ervan bewust bent en dat je er in je ontwerp rekening mee houdt.


Terug naar de inhoud