HTML Frames

HTML Frames introductie

  • Met behulp van HTML kan een venster onderverdeeld worden in meerdere frames of sub-vensters.
  • In elk frame kan een document geopend worden. De frames werken onafhankelijk van elkaar, een document in het ene frame kan vooral een statische weergave hebben (bijvoorbeeld een titelbalk of een inhoudsopgave), terwijl in een ander frame door opeenvolgende documenten heen gelopen wordt.
  • Vanuit elk document kunnen hyperlinks nieuwe documenten openen in hetzelfde of in een ander frame.
  • De frames-indeling gebeurt met behulp van de <frameset> tag in een aparte (extra) webpagina.
    Deze pagina heeft zelf geen inhoud maar bevat enkel informatie in verband met de structuur van de frames.
    In de HTML-code van dergelijke pagina's ontbreken dan ook de <body> tags.
  • Nadelen bij het gebruik van frames :
    • Frames worden niet meer ondersteund in latere versies van HTML ((X)HTML5).
    • Frames zijn moeilijk in gebruik (o.a. printen van hele pagina's is bijna onmogelijk)
    • Zoekmachines kunnen niet goed met frames omgaan. Gevonden zoekresultaten verwijzen naar het document met de betreffende inhoud, ongeacht of dat document bedoeld is als onderdeel van een frameset.
      Het gevolg is dat bezoekers bijvoorbeeld de navigatie niet zien, die bij het betreffende document zou moeten horen.
    • Bookmarks werken niet goed. Het is wel mogelijk om een subdocument afzonderlijk te bookmarken, maar als de pagina dan weer geopend wordt, is de context van het hoofddocument afwezig.
    • Uitschuif menu's (en 'layers' in het algemeen) zijn gevangen in hun eigen frame, hetgeen impliceert dat de sub-items van een (gewoon) navigatiemenu niet op de hoofdpagina verschijnen.

Verschil HTML - XHTML

Om een pagina met frames te valideren moet het <!DOCTYPE> ingesteld staan op "HTML frameset DTD" of "XHTML frameset DTD".

Het <frameset> element

  • Het <frameset> element zorgt voor het verdelen van de pagina in deelvensters.
  • Het <frameset> element bevat één of meer <frame> elementen.
  • Voor elke verdeling die met de <frameset> tag maakt, verschijnt in de browser een venster.
  • Voor complexere venster structuren is het mogelijk om framesets te nesten.

naar boven 

Het <frame> element

  • Het <frame> element definieert de afzonderlijke frames.
  • Elk <frame> element kan een afzonderlijk document bevatten.

Het <noframes> element

  • Om User Agents die het gebruik van frames niet ondersteunen toch de inhoud van uw pagina's te laten zien kan je gebruik maken van het <noframes> element

naar boven 

Element Beschrijving Attributen
<frameset>  Definieert de volledige structuur van de frames. cols, rows
<frame />  Definieert de afzonderlijke frames. frameborder, longdesc, marginheight, marginwidth, name, noresize, scrolling, src
<noframes>  Een definitie voor browsers die geen frames ondersteunen. geen
naar boven naar boven naar frameset
naar boven naar het frameset element