Lektion 10: Frames

Frames giver dig mulighed for at dele browservinduet op i flere vinduer. Lektionen lærer dig hvordan.

Vha. frames er det muligt at bruge X antal HTML filer på én webside på én gang.

Det lyder umiddelbart smart, men vi anbefaler fra klikamok's side at du ikke benytter frames. Surfer du rundt på nettet finder du sjældent professionelle hjemmesider, som er bygget op vha. frames - det er der masser af gode grunde til.

Dette betyder dog ikke at du ikke skal have teorien med alligevel.

Principperne bag frames

Vi kan forestille os en hjemmeside som er bygget således op:

1.2.

1. angiver placeringen for navigationen (menu'en) på hjemmesiden. Denne menu har sin egen html fil. Lad os sige "menu.html".
2. angiver placeringen for hjemmesidens indhold. Igen har denne del sine egne HTML filer. Lad os sige at forsiden hedder "main.html".

Nu indfører vi en tredie fil. Vi kalder den for "frameset.html". I frameset.html filen gør vi browseren opmærksom på at:

  1. browseren skal benytte frames,
  2. der er to frames,
  3. de to frames er sat op i kolonner,
  4. venstre frame skal benytte "menu.html" filen,
  5. højre frame skal benytte "main.html" filen.
Vi benytter således 3 filer for at få vist 2 filer. "frameset.html" filen har ikke noget visuelt indhold i sig selv - kun information om, hvilke HTML filer der skal vises hvor.

I det efterfølgende benytter vi oventående eksempel, men vi bekymrer os ikke om hvad der står i "menu.html" og i "main.html" filen.

Et simpelt frameset

Følgende kode i "frameset.html" filen vil give resultatet beskrevet herover:

<html>
<head>
<frameset cols="180,*">
<frame src="menu.html" name="menu">
<frame src="main.html" name="indhold">
</frameset>
</noframes>
<body>
Din browser understytter ikke frames
</body>
</noframes>
</head>
</html>

Alt hvad der står imellem <frameset> ..og.. </frameset> er del af frames koden. Under nævnte tags, står en <noframes> erklæring. Denne erklæring læser browseren hvis den ikke understøtter frames.

I <frameset> tag'n ser vi at der er brugt koden cols="180,*". Det betyder a) at der er to frames og b) at de to frames er sat op i kolonner. Størrelsen (i dette tilfælde bredden) af kolonnerne er de to efterfølgende tal. Tegnet * læser browseren som "resten".

Størrelsen på en frame skal angives enten som *, i pixels eller i %. Vi anbefaler ikke angivelse %. Eksempler på størelse kunne f.eks. være: cols="100,*,100" eller cols="60%,40%". cols="200,600" vil ikke virke da du ikke kan være sikker på at brugerens skærmopløsning er 800x600.

Der brugt cols="" i <frameset> tag'n herover. Havde vi i stedet brugt rows="" var de to frames blevet til rækker i stedet for kolonner.

I <frame> tag'n ser vi at src="" koden angiver hvilken HTML fil der skal benyttes. Samme sted ser vi koden name="" benyttet. Det er nødvendigt at benytte name's til dine frames hvis du vil have mulighed for at åbne andre HTML side i en given frame.

I eksemplet herover har vi en menu i venstre frame. Her er tanken at et menu punkt skal åbne en ny side i højre frame. Her benyttes det navn vi har givet højre frame, som target="" i linket. Linket i venstre menu skulle altså i ovenstående tilfælde se således ud:

<a href="kontakt.html" target="indhold">Kontakt os</a>

Et avanceret frameset

<html>
<head>
<frameset cols="180,*" frameborder="0" framespacing="0" framepadding="0">
<frame src="menu.html" name="minmenu" scrolling="no">
<frame src="forside.html" name="minforside" scrolling="auto">
<noframes>
<body>
Din browser understøtter ikke frames... osv...
</body>
</noframes>
</frameset>
</head>
</html>

Eksemplet burde tale for sig selv. Vi har indført et par nye koder i <frameset> tag'n som gør at vi kan fjerne "luft" og "kant", og vi har indført en kode som hedder scrolling="" i <frame> tags'ne som gør at vi kan bestemme om der skal være scrollbars i de enkelte frames. scrolling="" kan have værdien "yes", "no" eller "auto".

Det er også muligt at flette frames.. f.eks. som i flg. eksempel:

<frameset cols="180,*">
<frame src="menu.html">
        <frameset rows="60,*">
        <frame src="top.html">
        <frame src="forside.html">
        </frameset>
</frameset>

Afsluttende bemærkning

Mere vil vi ikke sige om frames her. Den bedste måde at lære om frames på er a) at prøve sig frem, og b) at surfe rundt på nettet og lade sig inspirere af andres frameset's.

Og husk: Frames bør ikke benyttes hvis der ikke er en rigtig god grund til det.

Skrevet okt. 2001 af Niels Rune Bøggild

Tilføjet af Simon Glue den 02-12-2003 - Hits: 4327
Nyhedsbrev

Artikler og tips til webmastere på e-mail:
 
Tilmeld   Afmeld
Nu 9822 modtagere.

Hjemmesider Login

Brugernavn:


Password:



Opret hjemmeside


Annoncering | Information | Presse | Kontakt os | RSS | © HEPHEY 2002 - 2007

Lektion 10: Frames
Her er du  :   HTML   >  Tutorial   >  Lektion 10: Frames