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řen i obsah časopisu MYŠLENKA a okno vpravo, kde nyní je tato výuka.
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
|
|