Rámy (frames)

Rámy v dokumentu jsou ošemetná věc. Když jsem dělal tuhle stránku, hodně jsem váhal, jestli je na ní mám vůbec použít. Hodně prohlížečů totiž rámy nepodporuje. Sice se jedná o low-end :-) prohlížeče jako třeba lynx (ve vší úctě k lynxu, není to to pravé pro prohlížení stránek typu http://www.sgi.com, kde se to jen hemží JavaScriptem a true color obrázky), ale stejně člověka pořádně dožere, když se mu namísto stránky objeví veselá hláška o tom, že „váš prohlížeč bohužel nepodporuje rámy...“.

Rámy úplně mění tvar celého dokumentu. Místo příkazu <BODY> použijete párový příkaz:

<FRAMESET>
Ten říká prohlížeči, že dokument obsahuje rámy. Příkaz má parametry:

ROWS="velikost_1._okna, velikost_2._okna,..."Tento parametr rozdělí stránku na vodorovné pruhy nad sebou. Velikost jednotlivých pruhů zapíšete za sebou (tak jak půjdou po sobě) do uvozovek (mezi jednotlivými velikostmi uděláte čárky). Pokud napíšete číslo, znamená to výšku pruhu v pixelech. Pokud za číslo napíšete procento, znamená to počet procent z celého okna browseru. Pokud použijete hvězdičku * znamená to, že se pruh rovnoměrně podělí o zbytek okna.
COLS="velikost_1._okna, velikost_2._okna,..."Tento parametr má stejný význam jako ROWS, jen okno rozdělí na svislé sloupce.
BORDER="síla_rámečkuUdává, jak sílná čára se použije pro oddělení jednotlivých rámů. Pokud je uvedena nula, rámeček není vůbec vidět.

Příklad:

<FRAMESET COLS="200,*"> Rozdělí okno na 2 sloupce. První bude mít šířku 200 pixelů a druhý zbytek.

<FRAMESET ROWS="50%, *, 20">Rozdělí okno na 3 vodorovné pruhy. Horní bude zabírat polovinu okna. Spodní 20 pixelů a zbytek bude mít prostřední pruh.

<FRAME>
Příkaz musí být mezi <FRAMESET> a </FRAMESET> a upřesňuje informace o jednotlivých rámech v tom pořadí, jakém jste je uvedli v příkazu <FRAMESET> (pokud je toto první příkaz <FRAME> po <FRAMESET> týká se to prvního rámu, pokud druhý tak druhého, atd.). Má následující parametry:

NAME="jméno_rámu"určuje jaké jméno dáme rámu. Pomocí tohoto jména se do něj budeme odvolávat parametrem TARGET např. v příkazu <A HREF>. Následující jména jsou rezervovaná pro určité implicitní rámy:

_blankOdkaz do nového okna
_selfOdkaz do aktuálního rámu
_parentOdkaz do nadřezeného rámu
_topOdkaz do celého okna browseru (ruší rozdělení na rámy)

SRC="cesta_k_dokumentu"Určuje zdrojový soubor HTML dokumentu. Má stejný význam, jako např. parametr src v příkazu <IMG>.
SCROLLING="hodnota"Určuje, zda se zobrazí posouvací lišta k rámu. Může nabývat následujících hodnot:

AUTOImplicitní volba. Zobrazuje posuvníky jen když jsou třeba.
YESZobrazuje posuvníky vždy.
NOPosuvníky nikdy nezobrazí.

<NOFRAMES>
Párový příkaz určuje, co uvidí onen nešťastlivec s browserem, který nepodporuje rámy.


Příklad

<HTML>
<HEAD>
<TITLE> Stránka s rámy </TITLE>
</HEAD>
<FRAMESET COLS="160,*">
<FRAME NAME="LEVY" SRC="levy.html" SCROLLING=NO BORDER=0>
<FRAME NAME="PRAVY" SRC="velky.html">
</FRAMESET>
<NOFRAMES>
<H1>Stránka s rámy!!</H1>
Váš browser nepodporuje rámy a je nemožné zobrazit tuto stránku správně. Pořiďtě si nějaký lepší browser, nejlépe <A HREF="ftp://ftp.vse.cz/pub/netscape/navigator/3.01/">Netscape Navigator 3.01</A>!!
</NOFRAMES>
</HTML>

Vytvoří stránku se dvěma sloupci. První bude mít šířku 160 pixelů a nebudou v něm zobrazeny posunovací lišty. Druhý bude mít zbytek okna browseru. Mezi rámy nebude vidět oddělovací čára. Uživateli se špatným browserem (takovým, který nepodporuje rámy) zobrazí stránku s doporučením o upgradu browseru :-)))