Administreres af:

Rammer Tilbage til oversigtstabel
Tilbage

 

Testkørsel: PC, Windows 98DK
Af: novicen.dk


Eksempel på rammesæt

Med rammesæt er det muligt at foretage visning af mere end ét HTML-dokument ad gangen i browservinduet. Visningen foregår dog ikke ved at de enkelte dokumenter lægges ovenpå hinanden men derimod ved, at de bliver vist ved siden af hinanden. Hvert enkelt dokument kan og skal i redigeringsfasen håndteres som selvstændige dokumenter. Rammesættet er kun den skabelon, som holder enkeltsiderne på plads i forhold til hinanden.

Se demo af rammesæt som skitseret på billedet.

I et rammesæt er det muligt - fra en hvilken som helst ramme efter behov - at skifte indholdet i de øvrige rammer.

Til top

Fordele, ulemper og kendetegn

En fordel ved at anvende rammer er at brugeren hele tiden kan have menuen synlig. Ved at placere menuen i en særskilt ramme - og fra denne udskifte indholdet i andre rammer - vil brugeren hele tiden have adgang til at kunne komme til andre dele af web-stedet. Navigeringen kan altså blive lettere at overskue.

Det er en mulig ulempe ved anvendelse af rammesæt, at brugeren kan have svært ved at udskrive de informationer til printer, som ønskes. Ved anvendelse af rammesæt, skal brugeren - på forhånd eller i selve udskrivningsprocessen - foretage valg af, hvad der skal udskrives.

Der er to særlige kendetegn for et web-sted der anvender rammer: Hvis du på et web-sted kan navigere rundt uden at adressen i browserens adresselinie skifter, er du med sikkerhed på et web-sted, der anvender rammer. Hvis du har et rullegardin i browservinduet, hvor du kun kan rulle i en del af vinduet er du med sikkerhed også på et web-sted der anvender rammer.

Til top

Rammesættets opbygning

Et rammesæt består af kombinationer af lodrette og/eller vandrette inddelinger der hver kan inddeles i andre vandrette og/eller lodrette inddelinger der igen kan inddeles.... osv. Hver inddeling kaldes for en ramme. Det er dermed muligt at frembringe meget komplekse layout for et web-sted.

Rammer som står lodret kaldes for kolonner (cols) og rammer som ligger vandret kaldes for rækker (rows). Ovenstående eksempel er opbygget som et rammesæt bestående af to kolonner, hvor den sidste - den højre - kolonne er opdelt i to rækker. Koden for hele rammesættet ser således ud:

<html>
 <head>
  <title>novicen.dk - rammedemo, index</title>
 </head>
 <frameset cols="120,*">
  <frame src="menu.html" name="menu" noresize scrolling="no">
  <frameset rows="80,*">
   <frame src="top.html" name="topramme" noresize scrolling="no">
   <frame src="velkomst.html" name="indhold" noresize>
  </frameset>
 </frameset>
 <noframes>
  <body bgcolor="#ffffff">
   <p></p>
  </body>
 </noframes>
</html>

Den enkleste måde at anskue et rammesæt på, er ved at betragte den simpleste udgave. I eksemplet er der først oprettet et rammesæt bestående af to kolonner, hvor den første kolonne er sat til 120 pixel - menu - i bredde og den resterende kolonne - nyt rammesæt - er sat til resten af det tilgængelige område (angivet med *).

<frameset cols="120,*">
   :
   :
</frameset>  

I dette rammesæt er menuen den første ramme og den resterende del anvendes til et nyt rammesæt, hvor indelingen er i rækker. Den øverste række - topramme - er her 80 pixel høj og den nederste - indhold - fylder den resterende del af det tilgængelige område.

Ud over angivelse i pixel kan angivelsen også gøres i procent - eks.: 20% - lige som for angivelse af kolonnebredder i tabeller.

  <frameset rows="80,*">
      :
      :
  </frameset>  

Da den yderste venstre og den øverste højre ramme har fået fastsat hhv. bredde og højde, vil det være rammen indhold, som vil skalere sig, hvis brugeren ændrer på browservinduets størrelse. Prøv selv at ændre browservinduet i ovenstående eksempel.

For hver angivelse der indgår i rammesættets cols eller rows attribut skal der indsættes en reference til en HTML-fil eller der skal oprettes et nyt rammesæt. For det yderste rammesæt er der først oprettet en reference til den fil, som indeholder menuen:

<frame src="menu.html" name="menu" noresize scrolling="no">

Som rammesættets anden reference er der indsat et nyt rammesæt inddelt i rækker. Dette indeholder referencer til to HTML-filer. Den første er til top.html og den anden til velkomst.html.

 <frameset rows="80,*">
   <frame src="top.html" name="topramme" noresize scrolling="no">
   <frame src="velkomst.html" name="indhold" noresize>
 </frameset>  

Læg mærke til, at for hver gang der oprettes et rammesæt - <frameset ......> - skal dette ophæves med den modsvarende kode - </frameset>. Rammesættet har altså både start- og slut-TAG. De indsatte rammer - referencen til de enkelte HTML-filer - er indsat i rammesættet på tilsvarende måde, som billeder anvendes indenfor HTML-dokumenternes BODY-TAG's. De indsatte rammer har altså ingen afslutnings-TAG.

Efter angivelsen af rammesættets TAG's vil du kunne indsætte TAG's der gør brugere af browsere, der ikke kan vise rammer, i stand til at få besked om, at deres browser ikke er egnet til at se web-stedet. I praksis burde dette idag være utopisk, da alle moderne/fornuftige brugere/browsere kan vise web-steder, som anvender rammer.

<noframes>
 <body bgcolor="#ffffff">
 <p><b>Din browser kan ikke vise rammer...!</b></p>
 </body>
</noframes>  

Indenfor de angivne NOFRAMES-TAG skal du indsætte BODY-TAG's som på en almindelig enkeltstående web-side og du skal formatere indholdet mellem disse på helt normal vis.

Til top

Attributter i rammesæt og rammer

I rammesættets TAG er det muligt at bestemme, hvorvidt der skal være en synlig kant mellem de enkelte rammer og i givet fald, hvor bred denne kant skal være. Til dette anvendes der tre attributter idet både Netscape og Explorer browserne skal tilgodeses. De to virker i den ene og den tredie i den anden.

border og framespacing angives i pixel, hvorimod frameborder angives med "yes" eller "no"

 <frameset cols="120,*" border="0" framespacing="0" frameborder="no">
  <frame src="menu.html" name="menu" noresize scrolling="yes">
  <frameset rows="80,*" border="0" framespacing="0" frameborder="no">
   <frame src="top.html" name="topramme" scrolling="no">
   <frame src="velkomst.html" name="indhold">
  </frameset>
 </frameset>

Hvis du skal navigere rundt i dit rammesæt, skal alle rammer have angivet et navn - name. Du skal være opmærksom på, at betingelserne for navngivning på Internet skal være overholdt her. Du må altså ikke anvende mellemrum eller andre specialtegn. Herunder heller ikke æ, ø eller å.

For hver af de opsatte rammer er det muligt at bestemme, at brugeren ikke selv må kunne justere størrelsen af rammen. Dvs. at hvis der vises kant mellem de enkelte rammer så skal brugeren ikke kunne tage fat i denne kant og regulere bredde/højde på rammen. I eksemplet kan du selv flytte på den vandrette adskillelse, som skiller topramme fra indhold men du kan ikke flytte den lodrette ind mod menuen. Begrænsningen foretages ved at indsætte attributten noresize.

Du kan bestemme, om der evt. skal indsættes scroll-bar under visningen. Attributten scrolling sættes på selve rammen og værdierne kan angives til "yes", "no" eller "auto". Udelades angivelse af scrolling, vil denne som standard være "auto".

Det er også muligt for hver enkelt ramme at angive værdien af den margen der skal være i siderne og/eller i toppen. Disse attributter hedder marginwidth og marginheight og de angives begge i pixel.

Eksempelramme:

<frame src="top.html" name="topramme" scrolling="no" marginHeight="0" marginWidth="0">
Til top

Navigering i rammesæt

Ved navigation på et web-sted med enkeltstående sider skal du som link indsætte A TAG's omkring de elementer - tekster og/eller billeder - som du vil bruge for at komme andre steder hen fra den aktuelle placering på dit web-sted.

<a href="velkomst.html">Gå til siden velkomst</a>

Det skal du også, når du navigerer i rammesæt men for at du kan åbne den nye fil i den rigtige ramme, skal du angive i din link, at den skal åbne i en anden ramme. Dette gør du ved at indsætte endnu en attribut i A TAG'en - target - hvor du angiver navnet på den ramme, som du vil benytte til at vise filen i - eksempelvis target="indhold".

Når du derfor skal have din link til velkomstsiden i menuen til at åbne den valgte fil i rammen indhold, kommer hele kodelinien med din A TAG til at se således ud:

<a href="velkomst.html" target="indhold">Gå til siden velkomst</a>

Vær i denne forbindelse opmærksom på, at der skal være fuldstændig entydighed mellem angivelse i din target i A TAG'en og det anvendte name for rammen. Er der den mindste forskel - herunder også forskel på store/små bogstaver - vil navigationen ikke fungere korrekt.

Ud over anvendelse af de enkelte rammers navne er der fire definerede muligheder for angivelse af target.

_blank - åbner dokumentet i en nyt browservindue
_self - åbner i samme ramme - svarer til at target udelades
_top - åbner i stedet for alt det, som nu vises i browseren
_parent - åbner i stedet for det rammesæt som dokumentet, hvor linken er placeret, er en del af.

De fire sidstnævnte angivelser skal alle starte med en bundstreg og de skal skrives med små bogstaver.

<a href="velkomst.html" target="_blank">Gå til siden velkomst</a>
Til top


© Copyright 1999- , novicen.dk - All Rights Reserved
Drift og vedligehold: KS Centret ApS, Vejle
Redaktionel E-mail: kaj.linaa@ksc.dk
Grafisk design: Per Rahbek