![[i-logo]](../s_inter.gif) 
![[hlavní]](../hlav2.gif) 
![[předchozí]](../pred1.gif) 
Staňte se WWW-autorem, Část 1.
World-Wide Web (WWW) vítězně táhne světem. Všichni se chtějí hypertextově a
multimediálně prezentovat. I u nás roste počet lidí, vytvářejících
dokumenty pro WWW (např. své domácí stránky). Proto jsme se rozhodli
publikovat stručný návod "jak na to". Pokud snad nemáte možnost vyrobit si
vlastní domácí stránku nebo dokonce ani přístup k Internetu, nemusíte
znechuceně obracet stránku. Většina WWW klientů dokáže pracovat i na
izolovaném počítači. Díky tomu si můžete vyrábět alespoň lokální hypertextové
dokumenty.
Cílem našeho krátkého seriálu je poskytnout nic netušícímu čtenáři základní
poznatky k tomu, aby byl schopen vytvářet jednoduché dokumenty pro WWW.
Jádrem textu bude stručné seznámení s nejdůležitějšími částmi jazykem HTML,
který je pro tyto účely používán. Nejprve však uveďme několik
základních pojmů.
1    Co je co
World-Wide Web, zkracovaný na WWW, je jednou z nejnovějších služeb
Internetu. Je mimořádně ambiciózní, ale bohužel také náročný na přenosové
kapacity. Staví na principech, které v současné době cloumají celým
počítačovým světem. Lze jej charakterizovat jako
- 
živatelsky přítulný:  klientské programy zpravidla používají grafické
     uživatelské rozhraní (bez něj ostatně WWW ztrácí řadu svých výhod),
     uživatel jen klikne myší a nevychází z úžasu;
- 
hypertextový:     základní jednotkou komunikace ve WWW je dokument. Ten
     může obsahovat odkazy na další dokumenty. Odkazované dokumenty
     se mohou  nacházet kdekoli v  Internetu. Uživatel se  jedním
kliknutím
     myší může přenést z Japonska do Ameriky.
- 
multimediální:    kromě textů dokáže pracovat i s obrázky, zvuky, animacemi
     atd. atp. Zkrátka vším, co máme ve zvyku označovat slovem multimédia.
WWW vychází z modelu klient-server.  Uživatel musí mít pro jeho využívání
speciální klientský program (často označovaný termínem
prohlížeč,   anglicky 
browser), který pro něj obstarává komunikaci se
serverem.  Specialitou WWW je velmi významná role přisuzovaná právě
klientovi. Ten kromě vytváření dotazů musí zajistit i interpretaci a
formátování dokumentů, které získal jako odpovědi na své dotazy. Vzhled a
chování WWW tedy leží na bedrech klienta.
Ve světě WWW se často setkáte s následujícími pojmy:
- 
HyperText Transfer Protocol (HTTP)       je protokol, který definuje pravidla
     komunikace mezi klientem a serverem.  Pro běžného uživatele či autora
     není  nijak zvlášť  významný a  proto se  mu nebudu věnovat.
Zmíníme se jen
     o jedné významné vlastnosti: tento protokol je bezstavový. To znamená,
     že jednotlivé dotazy a jim příslušející odpovědi představují zcela
     samostatné jednotky komunikace. Jestliže server odešle odpověď na
     dotaz klienta, celá transakce pro něj končí. Pokud vzápětí obdrží od
     téhož klienta další dotaz, nedává jej do žádné souvislosti s dotazem
     předchozím. Veškeré vazby (např. to, že dotaz vznikl odkazem z
     předchozího dokumentu) obstarává klient.
- 
HyperText Markup Language (HTML)          označuje jazyk pro popis dokumentů.
     Dokumenty WWW musí dodržovat pravidla HTML, aby je klienti mohli správně
     pochopit a zobrazit. Důležitou skutečností je, že interpretace (a
     tudíž i vzhled) dokumentu je jednoznačně v kompetenci klienta.  Na něm
     záleží, jak bude formátovat jednotlivé prvky dokumentu - např. jakou
     velikost písma použije pro nadpisy.
     Autoři některých klientů dokonce rozšířili jejich schopnosti za
     hranice HTML, což je dvojsečná zbraň. Na jedné straně tím zvyšují
     atraktivnost svých programů a přinášejí nové podněty pro rozvoj HTML.
     Zároveň tím však do HTML vnášejí chaos. Dokumenty vytvořené na míru
     určitému klientovi mohou působit problémy jinému.
- 
Unified Resource Locator (URL)      slouží k definici odkazů na dokumenty.
     Jeho prostřednictvím lze přesně popsat, jak získat v Internetu určitou
     informaci. URL identifikuje službu, kterou musíte použít, server a místo
     na něm, kde se dotyčná informace nachází. Podrobněji jste se o URL
     mohli dočíst v první lekci minikurzu Internetu (Computer Echo 2/95).
Vzájemný vztah těchto pojmů při jedné transakci znázorňuje
obr. 1.
2    Klienti pro WWW
Existuje celá řada klientských programů pro nejrůznější operační systémy.
Jsou k dispozici produkty komerční i volně šiřitelné. I stručný popis by
vydal na samostatný seriál. Zde vyjmenujeme jen několik zástupců, které
považujeme za zajímavé. Na 
obr. 2 až 4 je vidět, jak se různí
klienti vypořádali se zobrazením téhož dokumentu - domácí stránky CESNETu.
- 
Mosaic (obr. 2)  je klasikem žánru a značnou měrou se podílel na
     obrovské popularitě a rozšíření WWW. Tento grafickéhý klient
je dostupný pro
     X Window System (Unix), System 7 (Macintosh) a MS-Windows (PC).
- 
NetScape  (obr. 3)   představuje pro Mosaic nejvážnější konkurenci. Já
     osobně mu dávám přednost. Jeho silnou devizou je, že zobrazuje
     dokument za chodu. Můžete číst začátek textu, jehož konec teprve
     přichází z Internetu. Nepříliš šťastnou kapitolu v historii NetScape
     představuje jeho nestandardní rozšíření jazyka HTML. Naštěstí se
     autoři rozhodli další rozvoj podřídit nově vznikajícímu standardu
     HTML 3. NetScape je dispozici pro tytéž platformy jako Mosaic.
- 
Arena  (obr. 4)  je experimentální klient. Již dnes podporuje jazyk HTML
     verze 3, který je v současnosti teprve ve stádiu zrodu. Je k dispozici
     jen pro X Window System (Unix), verze pro další operační systémy se
     připravují.
- 
Lynx  (obr. 5)  patří do nepříliš početné rodiny klientů, pracujících v
     textovém režimu. Je implementován pro operační systémy Unix a MS-DOS.
     Bývá často používán pro veřejné anonymní klienty. Jednoho z nich
     najdete na adrese public.vslib.cz. Přihlaste se Telnetem a jako
     uživatelské jméno zadejte www.
Velmi častou a logickou uživatelskou otázkou je:
"Který klient je nejlepší?"
Jediná rozumná odpověď na ni zní:
"Vyzkoušejte je a vyberte si sami."
Já zpravidla používám NetScape, ale nelpím na něm (čas od času
jej střídám s Mosaicem).
3    HTML a dokumenty
Jazyk HTML je v podstatě jazyk pro formátování textů
(obohacený o možnost odkazovat se na další dokumenty).
Ty bývají v
angličtině označovány termínem markup language. Jejich charakteristickým
znakem je, že příkazy (v terminologii HTML se jim říká 
značky), ovlivňující
vzhled dokumentu, jsou vpisovány přímo do textu. Zpravidla pro jejich zápis
slouží určitá rezervovaná slova či znaky. Rozšířenými zástupci
formátovacích jazyků jsou typografický program TeX či z Unixu dobře známé
nroff, troff a spol.
Pro vytvoření HTML dokumentu máte k dispozici několik možností.
- 
HTML editor.     Jedná se o editor, určený přímo k výrobě HTML dokumentů.
     Zpravidla zná všechny komponenty jazyka, dokáže kontrolovat správnost
     dokumentů a spustit WWW klient k prohlédnutí výsledku. Existuje
     několik produktů této kategorie - např.  HoTMetaL 
či HTML Assistant.
     Kromě nich existují ještě nadstavby běžných textových editorů,
     umožňující vyrábět HTML z jejich normálních dokumentů. Takové nadstavby
     jsou k dispozici třeba pro MS Word či Emacs.
- 
Konvertor.   Tyto programy slouží k převodu dokumentů z nejrůznějších
     existujících typografických či textových systémů do HTML. Autor se
     nemusí učit nic nového, vyrobí dokument svým obvyklým způsobem a na
     závěr jej nechá konvertovat do HTML formátu. Tahle možnost zní dost
     lákavě -  vždy je příjemné rozšířit  svůj akční rádius, aniž
by bylo
     nutné něco se učit. V praxi bohužel narazíme na konflikty mezi
     schopnostmi jednotlivých systémů a HTML. Výsledek konverze je často
     zapotřebí ručně upravit do výsledné podoby. Konvertory existují z
     LATEXu, *roffu, RTF a řady dalších systémů či formárů.
- 
Ruční práce.   K ní postačí libovolný ASCII editor a znalost HTML.
     Vytvoří se text a do něho se  přímo zapíší jednotlivé značky.
     Osobně dávám tomuto způsobu práce přednost, zejména při vytváření
     jednodušších dokumentů.  Mým oblíbeným editorem  pro HTML je
tedy "starý
     dobrý" vi.
Na první pohled se může zdát, že vybereme-li si první či druhou cestu,
nemusíte se s HTML zatěžovat. To by mohla být pravda až do té doby, kdy
něco zaskřípe nebo nebude fungovat podle vašich představ. HTML editory ani
konvertory nejsou dokonalé. Jejich výtvory je často nutné upravit či
opravit. V takových případech budete bez znalosti HTML bezmocní.
4   Značky
Příkazům, ovlivňujícím vzhled dokumentu, se v terminologii HTML říká
značky. Jejich prostřednictvím se vymezují prvky dokumentu, které mají být
zpracovány určitým specifickým způsobem. Pomocí značek lze definovat
různé druhy písma, záhlaví, odkazy na jiné dokumenty či vložené obrázky.
V jazyce HTML je značka tvořena slovem (jménem), uzavřeným mezi 
znaky < a >.
Například <BODY>  zahajuje tělo dokumentu (jak uvidíte později). 
Nezáleží na
velikosti písmen ve jméně značky. Můžete psát 
<body>  i <BodY>. Budete-li
dokumenty vyrábět ručně, doporučuji stanovit si svou vlastní konvenci a
zapisovat značky jednotným způsobem (např.  já je píši velkými
písmeny, což bude patrné z tohoto textu.
Názvy jednotlivých značek jsou součástí definice HTML. Narazí-li klient v
dokumentu na značku jemu neznámou, měl by ji ignorovat. Díky tomuto
pravidlu může alespoň do jisté míry možné zpracovat a zobrazit dokument,
obsahující nestandardní značky. Nicméně jejich používání byste se jako
potenciální HTML autoři měli vyhnout.
Řada značek se vyskytuje v párech, vymezujících rozsah jejich působnosti.
V takovém případě je ukončující značka totožná se zahajující, ale jejímu jménu
je předsazeno lomítko (/).  Tělo HTML dokumentu je tedy zahájeno značkou
<BODY>  a ukončeno </BODY>.
Chování mnoha značek můžete ovlivnit prostřednictvím atributů.
Podrobněji se jim budu věnovat v části, věnované
odkazům.
Příště se začneme zabývat konkrétními značkami, jejich
významy a možností použití.
PAVEL SATRAPA,
odborný asistent Katedry informatiky TU v Liberci, 
se zabývá počítačovými sítěmi a jejich službami.
e-mail:      Pavel.Satrapa@vslib.cz
www-stránka: http://www.cesnet.cz/staff/satrapa.html
![[hlavní]](..//hlav2.gif) 
![[předchozí]](../pred1.gif) 
![[nahoru]](../nahoru.gif)