TABULKY.GIF


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