Mint a bevezetőbeli példán is látható volt, a keretek definiálását végző HTML dokumentum (a továbbiakban keretdokumentum) tartalma jelentősen eltér a szokásos weboldalak tartalmától.
Elsőre észrevehető, hogy nincsen benne BODY elem, helyette egy FRAMESET elem található.
Ez a FRAMESET elem írja le a keretdokumentum szerkezetét, vagyis azt, hogy az egyes belső ablakok a dokumentum ablakának melyik részét foglalják el. Ezen felül az elem tartalmazhat egy NOFRAMES elemet is, amely annak a böngészőnek szól, amely nem képes a keretek megjelenítésére: az ilyen böngsző az ebben megadott elemeket fogja a keretek helyett megjeleníteni.
Nem csak a régi, elavult böngészőkkel fordulhat elő, hogy nem képesek a kereket megjelenítésére. Amennyiben nem grafikus, hanem karakteres böngészőt használunk, mint amilyen a lynx is, akkor az szintén nem jeleníti meg a kereteket, azonban elképzelhető, hogy minden keretet egy-egy hivatkozással tesz elérhetővé. Másrészt azonban a keretek megjelenítésére alkalmas böngészőkben is elképzelhető, hogy a felhasználó letilthatja a keretek megjelenítését valamilyen ok miatt. Ekkor a böngészőnek szintén úgy kell viselkednie, mint ami nem képes a keretek megjelenítésére.
A FRAMESET elem gyakorlatilag azt a
rácsozatot definiálja, amelynek a belsejében a keretek elhelyezkednek. Ezt olyan
módon teszi, hogy a rács sorainak –
rows
paraméter – magasságát
felülről lefelé felsorolva, illetve a rács oszlopainak –
cols
paranéter –
szélességét balról jobbra haladva felsorolva beállítjuk. Az így keletkezett rács
belsejében található minden egyes téglalap számára azután a
FRAME elemmel egy-egy tartalmat kell
definiálni, amely egy önálló weboldal vagy más erőforrás lesz.
A fent említett mindkét paraméter értéke úgynevezett
multilength-lista lesz, ami azt jelenti, hogy vesszővel elválasztva
felsorolhatunk relatív/abszolút hosszértéket, vagy aránymeghatározókat. Ez
utóbbi a következőképpen néz ki: egy számjegy és utána a *
(csillag) karakter. Jelentése pedig a következő: az összes aránymeghatározóként
megadott szélesség/magasság számára a többi kiosztása után fennmaradó helyet fel
kell osztani a megadott számértékek összegével azonos számú egységre, majd ebből
minden oszlop/sor annyi egységet kap, amennyi a számértéke.
Tehát például ha a következőt adjuk meg a rows
paraméter
értékeként: "1*, 3*, 100"
, akkor a rendelkezésre álló
ablakmagasságból a legalsó sor kap 100 pixelnyi helyet. Az ezután fennmaradó
részt 1+3= 4 egyenlő részre kell osztani, amiből 1 részt kap a legfelső sor,
három részt a második sor.
Általában a fix szélességű oszlopok/sorok mellett érdemes legalább egy multilength értékkel megadott oszlopot/sort is megadni, amely így a maradék helyet lenyelheti, lehetővé téve a böngészőablak átméretezésétől való függetlenséget.
A cols
és a rows
paraméterek szerepelhetnek
egyszerre és külön-külön is, attól függően, hogy hogyan akarjuk felosztani a
rendelkezésre álló helyet a keretek között. Ha egy sorban egy keretet, míg egy
másikban két keretet akarunk elhelyezni, akkor először osszuk sorokra az
ablakot, majd a második sor tartalmának megjatározására a
FRAME elem helyett használjunk egy újabb
FRAMESET elemet, amelyben ezt a sort két
oszlopra osztjuk, majd a két oszlop tartalmát adó kereteket ezen belül
definiálhatjuk két FRAME elemmel.
A FRAME elemek sorrendje egy adott FRAMESET elemen belül mindig a rácsban felülről lefelé, és azon belül soronként balról jobbra halad, vagyis ebben a sorrendben határozzák meg a kereteket.
Minden egyes keretnek adható egy név a
name
paraméterrel, amelyen
keresztül később hivatkozni lehet majd rá, valamint megadható annak a
dokumentumnak a címe, amelyet be kell tölteni a keretbe. Ha ez utóbbi nem
szerepel, akkor a keret üres marad, és csak ha később valamely hivatkozás a
target
paraméter segítségével
ezt célozza meg, akkor töltődik be tartalom.
A FRAME elem további paraméterei azt szabályozzák, hogy jelenjen-e meg a keret szélén elválasztó vonal, az milyen széles legyen, legyen-e gördíthető egy gördítősávval az oldal, amely a keretben megjelenik, valamint, hogy átméretezhető-e az elválasztó sáv megfogásával a keret. Az ezek beállítását végő paraméterek az elem leírásánál megtalálhatók.
Lehetőség van az OBJECT elem
segítségével arra is, hogy adatokat osszunk meg az egyes keretek között. Erre a
HEAD elemen belül elhelyezett
OBJECT elemekkel van lehetőségünk, ha beállítjuk az
id
paraméterüket, amely értékre
azután valamennyi keretben elhelyezett dokumentumból lehet hivatkozni.