HTML v příkladech

3

Odkazy

 
Obsah

Rejstřík

Hledat

Dopis autorovi

...příklad pro třetí část...

Síla Webu spočívá ve vzájemném propojování dokumentů. Schopnost vkládat do stránek odkazy na stránky jiné odlišuje WWW od běžných systémů pro formátování textu a činí z něj službu počítačové sítě.

Uniform Resource Locator (URL)

Abychom však mohli zavést odkaz, musí existovat vhodný způsob identifikace cílového objektu. Snahy o jeho vytvoření mají své kořeny již v počítačovém dávnověku, do použitelné podoby však vyvřely až s nástupem WWW. Objevil se Uniform Resource Locator (URL), pomocí kterého lze identifikovat skoro všechny informace v současném Internetu. Skládá se ze dvou částí:
schéma:umístění
Schéma oznamuje, jakou metodou (kterým protokolem) je třeba k danému cíli přistupovat. Z umístění pak klient pozná, kde jej má hledat. Jedním z jednoduchých schémat je mailto, sloužící pro adresy elektronické pošty. Jako umístění slouží v tomto případě právě adresa - například poštovní schránka autora tohoto článku má URL mailto:Pavel.Satrapa@vslib.cz.

Většina služeb však zavádí strukturu i do umístění. Zpravidla je třeba určit server, který má být kontaktován, a cestu k datům v jeho informačním prostoru. Řada lokátorů proto vychází ze struktury:

schéma://server/cesta
Základem pro identifikaci serveru je samozřejmě jeho doménové jméno nebo IP adresa. Za ní může následovat dvojtečka a číslo portu, na kterém sídlí serverující program. Všechna schémata mají definován implicitní port. Použije se, když URL v tomto směru mlčí. Některé servery mohou vyžadovat důkaz vaší totožnosti - jméno a heslo. V URL je lze zadat před adresou počítače. Heslo je od jména odděleno dvojtečkou, celá dvojice pak od adresy serveru znakem "zavináč" (@). Například telnet://public:nikdo@kdesi.cz:3333/ je odkaz na informaci, dostupnou službou Telnet na počítači kdesi.cz (port 3333). při přihlašování je třeba zadat uživatelské jméno "public" a heslo "nikdo".

Telnet je typickým příkladem služby, která mívá v URL prázdnou cestu. Jakmile se někam přihlásíte, otevírá se terminálový dialog, ve kterém můžete mačkat speciální klávesové kombinace, prohánět se pomocí kurzorových kláves v menu a podobně. Formalizovat něco takového do podoby cesty v URL by bylo velmi ošidné.

Zcela bezprostřední interpretací cesty se může pochlubit schéma ftp. V něm cesta odpovídá umístění souboru či adresáře v systému souborů, nabízeném FTP serverem. Například ftp://ftp.vslib.cz/pub/README je lokátor souboru README, umístěného na anonymním (není zadáno uživatelské jméno ani heslo) FTP serveru ftp.vslib.cz v adresáři pub.

Ve schématu gopher začíná cesta identifikací tak zvaného Gopher typu - jednopísmenné označení, určené Gopher protokolem. Například nula ohlašuje textový soubor, jednička menu a podobně. Za typem následuje Gopher selektor, což bývá opět cesta v systému souborů, nabízených serverem. Selektor však znovu začíná identifikací typu, takže se v URL daný znak zdvojuje. Například seznam domácích Gopher serverů najdete na URL gopher://gopher.cesnet.cz/11/.gopherinfo/cz-gophers.

Pro naše téma je nejzajímavější schéma http, které se používá pro označování cílů, dostupných prostřednictvím WWW. Cesta zde také popisuje umístění v nabízeném stromě informací. Většina serverů však používá různá mapovací pravidla, zavádějící všelijaké přezdívky a zkratky. Proto cesta v lokátoru nemusí přesně odpovídat cestě v systému souborů. Jako příklad můžeme použít lokátor informační stránky města Liberce:
http://www.vslib.cz/liberec/.

Zadáváte-li ve schématech http či ftp jako cestu jméno adresáře, nezapomeňte za ně připojit lomítko. Bez něj se můžete dočkat nepěkných efektů. V lokátorech pro WWW stojí za pozornost dva speciální znaky. Pokud se v URL vyskytne otazník (?), je část lokátoru za ním chápána jako textový řetězec, vyjadřující dotaz uživatele. Jeho pomocí lze předat data programům, které se spouští na straně serveru (CGI skriptům). Když URL obsahuje křížek (#), interpretuje se zbytek lokátoru jako název návěští na stránce. Jeho prostřednictvím se můžete odkázat přímo na určitou část dokumentu.

Odkazy na stránkách

Pro vložení odkazu do WWW stránky slouží značka <A> (Anchor - kotva). Přináší dvě informace - kam vede a jak má na stránce vypadat. Cíl odkazu určuje atribut HREF značky. O její vzhled se stará text (a případné značky), uzavřený mezi <A> a párové </A>. Dostane-li klient zdrojový text
Server <A HREF="http://www.vslib.cz/">TU v Liberci</A> používá počítač Silicon Graphics.
zobrazí uvedenou větu. Slova "TU v Liberci" budou aktivní a pokud je uživatel zvolí, klient se přesune na stránku s URL http://www.vslib.cz/ - asi takto:
Server TU v Liberci používá počítač Silicon Graphics.
Uvnitř <A>...</A> se může nacházet i velmi rozsáhlý a složitý text. Tím se však podstatně sníží srozumitelnost stránky. Doporučujeme volit pro odkazy texty krátké a srozumitelné. Znění odkazu by mělo stručně a přesně vystihovat, co uživatel získá, když jej použije. Snažte se vyvarovat omšelému "klepněte zde", které je jistým výrazem autorovy bezradnosti. Místo
Chcete-li dokumentaci, <A HREF="manual.html">klepněte zde</A>.
je podstatně vhodnější třeba
Připravili jsme pro vás <A HREF="manual.html">dokumentaci</A>.
Klienti obvykle odlišují aktivní text barevně a navíc jej podtrhnou. Pokud se v těle odkazu objeví obrázek, bude orámován, což nemusí vždy vypadat hezky. Proto byl do návrhu nové verze HTML přidán ke značce <IMG> (byla o ní řeč v minulém díle) atribut BORDER. Jeho hodnota udává šířku dotyčného rámečku v obrazovkových bodech. Speciálně BORDER=0 zabrání jeho vytvoření.

Relativní URL

V předchozí ukázce jsme zároveň předvedli fenomén, zvaný relativní lokátor. Všimněte si, že URL v hodnotě atributu HREF nedodržuje strukturu, kterou jsme si vytyčili. Použitá konstrukce je však zcela korektní.

Relativní lokátor se vyznačuje tím, že obsahuje pouze cestu. Chybí v něm jak schéma, tak identifikace serveru. Aby klient věděl, kam se má obrátit, musí relativní lokátor zkombinovat s jiným - absolutním. Říká se mu základní URL. Jeho roli zpravidla hraje lokátor, pod kterým klient získal stránku. Vraťme se k poslednímu příkladu. Pokud by odkaz na dokumentaci byl obsažen ve stránce s URL http://www.kdesi.cz/docs/obsah.html, vedl by k lokátoru http://www.kdesi.cz/docs/manual.html.

Existují dva druhy relativních lokátorů. První používá absolutní cestu. Pozná se podle toho, že začíná lomítkem. Klient odtrhne celou cestu ze základního lokátoru a místo ní vloží text relativního URL.

Druhý typ relativního lokátoru obsahuje cestu relativní, která nezačíná lomítkem. Jeho zpracování je složitější. Klient nejprve odtrhne konec základního URL až k poslednímu lomítku. Za zbylý text připojí relativní lokátor a poté vypukne velké vyškrtávání. Z cesty ve vzniklém řetězci je třeba vypustit všechny dvojice adresář/.. (představují vlastně vstup do adresáře, bezprostředně následovaný vycouváním zpět).

Tabulka 1 uvádí několik příkladů, co vznikne aplikací různých relativních lokátorů na základní http://www.kdesi.cz/docs/obsah.html.

Tabulka 1: Výsledky relativních lokátorů
Relativní URL Výsledné URL
index.html http://www.kdesi.cz/docs/index.html
../index.html http://www.kdesi.cz/index.html
../x/index.html http://www.kdesi.cz/x/index.html
../x/../index.html http://www.kdesi.cz/index.html
../../index.html http://www.kdesi.cz/../index.html
/index.html http://www.kdesi.cz/index.html

Všimněte si předposledního řádku tabulky. K odstraňování řetězce .. dochází pouze v cestě. Jeho prostřednictvím nelze změnit údaje o serveru. Proto ve výsledném lokátoru jedna dvojice teček zůstala (což by pravděpodobně nedopadlo dobře).

Odkazy s relativní cestou se používají, pokud je cílová stránka umístěna blízko té stávající. Pokud se nachází ve stejném adresáři, stačí jako odkaz pouhé jméno souboru. Takové lokátory jsou velmi časté. Je-li stránka umístěna na tomtéž serveru, avšak v odlehlé části zdejšího stromu dokumentů, bude pravděpodobně výhodnější relativní odkaz s absolutní cestou. Pokud je třeba přesedlat na jiný server, musíte sáhnout po absolutním odkazu.

Odkazy na části dokumentu

Značka <A> nemusí sloužit jen jako nástroj ke vložení odkazu na jinou stránku. Její druhá funkce umožňuje vytvořit tak zvané návěští, které pak může posloužit jako cíl pro jiné odkazy. Pomocí návěští můžete identifikovat přímo určité místo ve stránce.

K zavedení návěští je třeba značku opatřit atributem NAME, jehož hodnotou bude jméno návěští. Je přiřazeno textu, který je tělem příslušné značky <A> - například

<A NAME="instal"><STRONG>Instalace</STRONG></A>
V odkazu se návěští projeví závěrečnou konstrukcí #jméno_návěští v atributu HREF. Pokud se definice návěští i odkaz na ně nacházejí ve stejném dokumentu, je tento zápis dostačující - například
Doporučený HW najdete v popisu <A HREF="#instal">instalace</A>.
Kromě toho však doušku #jméno_návěští můžete připojit za libovolný lokátor. Jediným předpokladem je, aby v dokumentu, identifikovaném odkazem, existovalo dané návěští.

Návěští nejsou určena ke strukturování textu. Měla by být používána jen k vyznačení některých významných míst (například důležitá tabulka nebo věta). Nezapomínejte, že klient musí načíst celý obsah stránky před návěštím, aby věděl, jak má text formátovat. Odkazem doprostřed dlouhé stránky tedy z hlediska objemu přenášených informací nic neušetříte. Naopak její přenos opticky zpomalíte - než klient narazí na návěští, bude text stránky načítat, avšak nebude z něj nic zobrazovat.

Poměrně častým použitím návěští je lokální obsah. Například stránka vypočítává jednotlivé volby, použitelné při startu programu. Je vhodné uvést na začátku jejich seznam, aby se uživatel mohl přesunout rovnou na tu, která ho zajímá. Tento přístup je použit i v našem dnešním příkladu.

Funkce stránek

Existence odkazů nás staví před nelehké dilema - chápat stránky spíše jako menu, v nichž jsou jasně a přehledně uspořádány odkazy na stránky další, a nebo se striktně držet hypertextu a odkazy vkládat do plynoucího textu. Každý přístup má něco do sebe a my si dovolíme doporučit, abyste využívali oba. Pravděpodobně zjistíte, že vaše stránky lze rozdělit do dvou skupin.

Jedny plní především roli nabídkově odkazovací (např. domácí stránka serveru nebo nabídka produktů). V nich se snažte dosáhnout maximální přehlednosti - aby uživatel snadno pochopil, kam a kudy může pokračovat. Koncipujte je spíše do podoby menu (s případnými ozdobami).

Druhou kategorii tvoří stránky informační (např. technický popis produktu). Zde se spíše držte hypertextu a odkazy můžete využít například k vysvětlení některých pojmů nebo ke zpřístupnění jiných produktů, o kterých se v textu mluví.


Pavel Satrapa
Článek byl otištěn v časopise
Softwarové noviny číslo 10/96
 
<--- --->