
Obsah lekce:
|
Co to jsou rámce?
Pomocí rámců (frames) je možné
rozdělit okno prohlížeče na několik oblastí. V každé oblasti je možné zobrazit
jiný dokument, který může být (a většinou též je) provázán s ostatními
dokumenty v jiných rámcích.
Nejčastěji bývá rámců použito
k rozdělení okna na úzký sloupeček umístěný vlevo (méně častěji vpravo)
obsahující nabídku HTML dokumentů, a větší okno, ve kterém jsou tyto dokumenty
zobrazovány. Stejným způsobem je tvořena i tato výuka jazyka HTML (viz. úvodní okno).
Rozdělení okna prohlížeče
Rámce jsou definovány ve
speciálním HTML dokumentu, který neobsahuje příkaz <BODY>. Místo něj je
použit kontejner <FRAMESET>, ve kterém je definován počet rámců a
jejich rozmístění v okně prohlížeče. Pomocí atributu COLS je definováno
vertikální rozdělení zobrazovací plochy, atributem ROWS pak členění
horizontální. Hodnota těchto atributů je zadávána v počtu pixelů, případně
procentuálně. Hvězdička v definici těchto atributů vymezuje rámci zbylý prostor
okna (v případě použití více "hvězdičkových" hodnot, je zbývající
prostor plochy prohlížeče spravedlivě rozdělen mezi tyto rámce). Počet hodnot
atributů COLS a ROWS určuje počet rámců v okně.
Uvnitř kontejneru FRAMESET se
používá příkazu <FRAME> a příslušného atributu SRC, s jehož
pomocí se specifikuje dokument, který má být v daném okně zobrazen. Atribut NAME
pak přiřazuje danému rámci jeho jméno, které se stává cílem hypertextových
odkazů.
|
Rozdělení okna prohlížeče ve výuce jazyka HTML
<HTML>
<HEAD>
<TITLE> Výuka jazyka HTML </TITLE>
</HEAD>
<FRAMESET COLS="180,*">
<FRAME SRC="obsah.htm" NAME="obsah" SCROLLING=auto NORESIZE>
<FRAME SRC="main.htm" NAME="main" SCROLLING=auto NORESIZE>
</FRAMESET>
<NOFRAMES>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<H2> HTML dokument vyžaduje podporu FRAMEů</H2><BR>
Prohlížeč je možné získat na adrese:
<A HREF="http://www.netscape.com"> http://www.netscape.com</A>
</CENTER>
</BODY>
</NOFRAMES>
</HTML>
Poznámka: tímto jsme získali levý sloupeček s názvem obsah a
pravé okno se jménem main.
|
|
- <FRAMESET rows="podélné_dělení_okna" cols="svislé_dělení_okna">
- ...<FRAME>...
- </FRAMESET>
- párová značka sloužící k rozdělení okna prohlížecího programu; používá se
v HTML dokumentu místo příkazu <BODY>; uvnitř tohoto kontejneru se smí
vyskytovat pouze příkaz <FRAME>, případně další skupina <FRAMESET>
(vnořování je přípustné)
rows |
podélné dělení okna; seznam je dělený čárkou |
cols |
svislé dělení okna; seznam je dělený čárkou
* dělení ve stejném poměru
n% procentuální dělení
n absolutní dělení (v pixelech) |
- !prvek není standardizován
- <FRAME src="url_dokumentu" name="jméno_rámu"
marginheight="výška_okraje" marginwidth="šířka_okraje"
scrolling=[yes | no | auto] noresize>
- nepárová značka definující jeden rám uvnitř prvku <FRAMESET>
src |
URL dokumentu, který má být obsahem rámu |
name |
jméno rámu, které může sloužit jako cíl pro hypertextové odkazy |
marginheight |
vzdálenost mezi textem a okrajem rámu ve svislém směru (v pixelech) |
marginwidth |
vzdálenost mezi textem a okrajem rámu ve vodorovném směru (v pixelech) |
scrolling |
opatření rámu posuvnými pruhy
yes ano
no ne
auto automaticky, jsou-li potřeba (implicitní hodnota) |
noresize |
zákaz měnit velikost rámu uživatelem |
- !prvek není standardizován
|
Příkaz FRAMESET je možné
vkládat do sebe, tedy například okno je rozděleno na dva vodorovné rámce. Každý z
těchto rámců je pak dále dělitelný svisle (samozřejmě je možné jej dělit znovu
i ve vodorovném směru).
|
Ukázka vnořování příkazu FRAMESET:
<HTML>
<HEAD>
<TITLE> Test </TITLE>
</HEAD>
<FRAMESET ROWS="*,33%">
<FRAMESET
COLS="25%,*,25%">
<FRAME
SRC="test.htm">
<FRAME
SRC="test.htm">
<FRAME
SRC="test.htm">
</FRAMESET>
<FRAMESET
COLS="33%,*">
<FRAME
SRC="test.htm">
<FRAME
SRC="test.htm">
</FRAMESET>
</FRAMESET>
</HTML>
|
Pohyb v rámcích
Rámce získávají smysl v
okamžiku, kdy v HTML dokumentu jsou hypertextové odkazy na jiné HTML stránky, které
jsou pak nataženy do různých rámců. Jako příklad zde uvádíme část dokumentu,
který je zobrazen v levé části okna prohlížeče při zpracování výuky jazyka
HTML.
|
Příklad na pohyb v rámcích:
<OL>
<LI> Lekce</LI><BR>
<A HREF="zaklady.htm" TARGET="main"> Základy</A>
<LI> Lekce</LI><BR>
<A HREF="struktur.htm" TARGET="main"> Strukturování
dokumentu</A>
<LI> Lekce</LI><BR>
<A HREF="format.htm" TARGET="main"> Formátování
textu</A>
</OL>
Poznámka: tento dokument je otevřen v rámu, který je pojmenován obsah,
a jak je patrné, všechny odkazy jsou přesměrovávány do jiného okna s názvem main.
|
Prohlížeče bez podpory rámců
Prohlížeče, které neumějí
rámce zpracovávat, přeskočí rozdělení obrazovky a neudělají vůbec nic. Na tuto
možnost je pamatováno zavedením příkazu <NOFRAMES>, který se provede právě v
případě prohlížeče neznajícího rámce. V tomto kontejneru je možné umístit
celé tělo HTML dokumentu s upozorněním, že pro zobrazení následujících stránek
je nutné mít prohlížeč s podporou rámců, případně sem lze umístit alternativní
"nerámcové" zpracování těchto stránek.
|
Příklad použití příkazu NOFRAMES:
<HTML>
<HEAD>
<TITLE> Výuka jazyka HTML </TITLE>
</HEAD>
<FRAMESET COLS="180,*">
<FRAME SRC="obsah.htm" NAME="obsah" SCROLLING=auto NORESIZE>
<FRAME SRC="main.htm" NAME="main" SCROLLING=auto NORESIZE>
</FRAMESET>
<NOFRAMES>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<H2> HTML dokument vyžaduje podporu FRAMEů</H2><BR>
Prohlížeč je možné získat na adrese:
<A HREF="http://www.netscape.com"> http://www.netscape.com</A>
</CENTER>
</BODY>
</NOFRAMES>
</HTML>
|
|
- <NOFRAMES>
- ...tělo dokumentu...
- </NOFRAMES>
- párová značka obsahující HTML dokument, který je zobrazen v prohlížečích
neumějících zpracovávat rámce při použití dělení obrazovky příkazem
<FRAMESET>
- !prvek není standardizován
|
|