Léto bývá v mnoha oborech a v novinařině zvlášť považováno za "okurkovou sezónu" -- mnoho nového a zajímavého se neděje a na přetřes se tak dostanou různá okrajová a nouzová témata. V rubrice věnované Internetu se však okurkového fenoménu bát nemusíme. Neustále se děje něco nového a nové technologie se líhnou, jak houby po dešti. Do tohoto kvasu přispěla na začátku července i navýsost povolaná instituce -- konsorcium W3C. Uvolnila návrh specifikace nové verze jazyka HTML. Verze je označena jako 4.0.
My si povíme o myšlenkách, z kterých verze 4.0 vychází, zpětné kompatibilitě s verzí 3.2 a podrobněji si rozebereme některé zajímavé rysy nové verze. Hned zkraje však musíme upozornit na to, že HTML 4.0 je "Working Draft". Z toho vyplývá, že specifikace může být kdykoliv změněna či dokonce zrušena. HTML 4.0 tedy dosud není závazný standard, který bychom měli dodržovat při vytváření našich stránek. Pokud se však nová verze HTML ukáže jako živataschopná (= budou ji podporovat prohlížeče), její statut se změní na "W3C Recommendation" a bude již závazným standardem Internetu.
OBJECT
),
skriptování a pro podporu vícejazyčných dokumentů. Cougar se
skládal ze samostatných dokumentů, které popisovaly
jednotlivá rozšíření oproti stávající praxi. HTML 4.0
přináší popis všech starých i nových elementů v jednom
dokumentu. Podívejme se na základní principy, které byly při
návrhu nové verze HTML brány v potaz.
Přenositelnost patří mezi základní myšlenky, na kterých vznikal Web. Jeden dokument by měl být pomocí Webu přístupný pro počítače s různým grafickým rozlišením, pro digitální diáře, zařízení pro syntézu zvuku, pro počítače připojené pomocí rychlé i pomalé linky. Tohoto cíle můžeme dosáhnout tím, že HTML bude využíváno jako značkovací jazyk k vyznačení struktury a nikoli jen grafického vzhledu dokumentu. Z tohoto důvodu nová specifikace nedoporučuje používání atributů a elementů k řízení grafického vzhledu dokumentů. Požadavky na grafický vzhled jednotlivých úseků dokumentu by měly být specifikovány pouze pomocí stylů.
Jednotný a přenositelný formát HTML ve výsledku přinese úspory jak uživatelům, tak i producentům informací, kteří se soustředí pouze na jeden formát poskytovaných informací.
Podpora vícejazyčnosti. HTML 3.2 mělo dostatečnou podporu
pouze pro anglicky psané texty. Podpora jiných jazyků,
zvláště pokud používaly jiné znaky než z anglické abecedy,
vždy pokulhávala. HTML 4.0 přejímá podporu vícejazyčnosti
z RFC dokumentu 2070. U valné většiny elementů lze použít
dva nové atributy LANG
a DIR
. První z nich slouží k určení
jazyka, kterým je obsah elementu zapsán. Jako hodnota se
uvádějí standardizované kódy. Například pro angličtinu
existuje kód en,
pro americkou angličtinu pak subkód en-US
.
Atribut DIR
slouží k určení směru textu. Implicitní hodnota
je ltr
pro text psaný zleva doprava. Druhou přípustnou
hodnotou je rtl
pro text psaný zprava doleva, jak je to
běžné zejména v některých arabských jazycích. Směr textu lze
míchat i uvnitř odstavce pomocí speciálního elementu BDO
.
Podpora vícejazyčnosti samozřejmě vyžaduje znakovou sadu, která obsáhne všechny používané znaky. Předchozí verze stavěla na 8bitovém kódování ISO 8859-1, které vyhovovalo angličtině a většině západoevropských jazyků. V HTML 4.0 je jako znaková sada podporováno 32bitové kódování ISO 10646 (je kompatibilní s Unicode 2.0), které pojme všechny na planetě používané znaky. Aby nebyly všechny dokumenty čtyřikrát větší, mohou se používat různé způsoby kódování této znakové sady. Mezi nejoblíbenější patří asi UTF-8, které jednotlivé znaky převádí do různého počtu oktetů. Znaky z dolní poloviny ASCII tabulky jsou přitom v UTF-8 kódovány stejně, což je velice příjemné.
Podpora vícejazyčnosti může přeneseně vylepšit i další fáze práce s HTML dokumenty jako indexování prohledávacími stroji, lepší typografii přizpůsobenou jazykovým zvyklostem, lepší převod textu na řeč, správné dělení slov a mnoho dalšího.
Dosažitelnost stránek i pro lidi s různými postiženími. HTML 4.0 v této oblasti nabízí zejména možnosti vytvoření textových popisů obrázků a i některých dalších HTML elementů. V nové verzi je rovněž možno ve formulářích přiřazovat jednotlivým vstupním polím návěstí, která usnadní práci s formuláři.
Tabulky jsou založeny na modelu podle RFC 1942. Nový model nabízí mnohem větší kontrolu nad strukturou a výsledným zobrazením tabulky. U sloupců lze určit jejich šířku a tabulka může být vykreslována ještě před tím, než je přenesen celý její obsah. Každou tabulku lze rozdělit na hlavičku, tělo a patičku. U dlouhých tabulek může být hlavička a patička neustále zobrazena pro usnadnění orientace, zatímco tělo tabulky bude skrolovat.
Obecná podpora pro vložené dokumenty. HTML 4.0 standardizuje
používaní elementu OBJECT
, který může být využit pro
vkládání obrázků, videa, zvuku, matematických výrazů,
různých aplikací a dalších objektů. Tento nový element
rovněž umožňuje specifikovat alternativní zobrazení, která
se použijí v případě, že daný objekt není prohlížečem
podporován.
Styly dokumentů nejsou žádnou novinkou. Doporučením W3C jsou již od konce minulého roku. Styly umožňují důsledně oddělit prezentační vlastnosti dokumentu od jeho struktury. HTML nabízí několik způsobů pro spojení dokumentu se stylem zapsaným v libovolném stylovém jazyce.
Podpora skriptů není v nejpoužívanějších prohlížečích nic
nového. Nicméně teprve teď se stává standardní součástí
HTML. Skripty mohou posloužit zejména při vytváření
inteligentních formulářů, které ověří správnost dat ještě
před jejich odesláním na server. HTML pro každý element
definuje události, které je možno ošetřit skriptem.
Zakomponování skriptů do HTML dokumentu je opět nezávislé na
použitém skriptovacím jazyce. Specifikace se zmiňuje
i o způsobu, kterým se je možno odvolávat na jednotlivé
elementy (pomocí návěstí definovaného atributem NAME
nebo
ID
) -- to je důležité zejména pro objektový model ve
vznikajícím dynamickém HTML.
Tisk více souvisejících dokumentů je nyní usnadněn díky standardnímu způsobu definování vztahů mezi dokumenty.
Snadnost použití byla zachována i v nové verzi HTML. Dokumenty lze pořád bezproblémově psát přímo ručně, i když autoři specifikace doufají, že se brzo objeví nástroje pro pohodlné vytváření např. složitějších formulářů.
XMP
, PLAINTEXT
a LISTING
. Místo nich se používá pouze
element PRE
.
Existuje i velké množství elementů, které HTML 4.0 obsahuje, ale specifikace jejich používání nedoporučuje. Zejména proto, že v další verzi HTML již nemusí být obsaženy. A o které elementy se jedná?
Především o element APPLET
. Aplety by se v nové verzi měly
vkládat stejně jako ostatní objekty pomocí elementu OBJECT
.
Měli bychom se vyhnout i elementu ISINDEX
, jehož funkčnost
můžeme velice snadno nahradit jednoduchým formulářem. Rovněž
se nedoporučuje používat elementy DIR
a MENU
. Ty slouží
k podobnému účelu jako nečíslovaný seznam UL
. Liší se pouze
grafickým zobrazením. My bychom měli používat element UL
a případné speciální požadavky na zobrazení specifikovat
pomocí stylu.
Poslední velkou zapovězenou skupinou jsou elementy sloužící
pro určování druhu písma a způsobu zarovnání (FONT
,
BASEFONT
, STRIKE
, S
, U
a CENTER
). Místo nich bychom měli
vždy použít styly a oddělit tak strukturu dokumentu od
požadavků na přesný grafický vzhled.
Používání stylů si vynutilo vznik dalšího elementu, který by
sloužil k označení části odstavce, na kterou chceme
aplikovat nějaký styl. Tento element se jmenuje SPAN
. Malá
ukázka použití:
Vidíme, žeRomán Temno napsal <SPAN class="small-caps">Alois Jirásek</SPAN>.
SPAN
má podobné použití jako element DIV
, ale
slouží k označení části textu uvnitř odstavce. DIV
naopak
slouží k označení několika odstavců dohromady.
V HTML 4.0 přibyl nový logický styl písma. Skrývá se za
elementem ACRONYM
a slouží k označování zkratek. Malá ukázka
použití:
Vysvětlení zkratky se může objevit např. po najetí myší nad zkratku.Služba <ACRONYM title="World Wide Web">WWW</ACRONYM> patří k nejrozšířenějším.
Pro zařazování krátkých citací se místo BLOCKQUOTE
může
používat element Q
.
Elementy INS
a DEL
můžeme používat k označení části
dokumentu, které oproti poslední verzi přibyla či ubyla.
Element LINK
, který mnoho autorů WWW stránek přiváděl do
rozpaků, dnes slouží k definování dokumentů, které mají
k našemu dokumentu nějaký vztah. Následující kód do
dokumentu vloží informaci o logicky předcházejícím
a následujícím dokumentu a o stránce s obsahem všech
souvisejících dokumentů:
Podobný mechanismus může být použit i pro specifikování alternativní verze dokumentu určené například pro tisk:<HEAD> <TITLE>Kapitola 2: Jak jsem...</TITLE> <LINK rel="Next" href="kapitola3.html"> <LINK rev="Previous" href="kapitola1.html"> <LINK rel="Contents" href="obsah.html"> </HEAD>
Opravdu komplexním je element<LINK media="print" title="Dokument v PostScriptu" rel="alternate" href="http://www.server.cz/docs/povidka.ps">
OBJECT
, jehož chování lze
ovlivnit dvěma desítkami atributů. Důležité je, že
v případě, kdy prohlížeč zadaný objekt neumí zpracovat,
zobrazí samotný obsah elementu OBJECT
. Využijeme-li tuto
vlastnost rekurzivně, dosáhneme velice zajímavých
a užitečných efektů. Následující HTML kód
spustí v prohlížečích, které podporují Javu, aplet s rotující planetou Země. Pokud prohlížeč neumí Javu, ale umí přehrávat MPEG, spustí se video s rotující planetou. Pokud ani s MPEGem neuspějeme, zobrazí se obrázek planety. Na znakových prohlížečích pak pouze popis toho, co je na obrázku vidět.<OBJECT classid="java:Earth.class">
<OBJECT data="Earth.mpeg" type="application/mpeg">
<OBJECT src="Earth.gif">
Planeta Země, tak jak ji viděl první kosmonaut.
</OBJECT>
</OBJECT> </OBJECT>
Mnoho vylepšení se dotklo formulářů. Vstupní pole lze nyní
slučovat do logických celků, přiřazovat jim návěstí.
U odkazů a vstupních polí může být pomocí atributu tabindex
určeno pořadí, v jakém budou postupně aktivovány při stisku
tabulátoru.
K dalším novinkám jako rámům, tabulkám podle RFC 1942 a kaskádovitým stylů se podrobně vrátíme v rubrice "Vytváříme si domovskou stránku".
Vážným a odvážným zájemcům o HTML nezbývá než doporučit
přečtení samotné specifikace na adrese
http://www.w3.org/TR/WD-html40-970708/
. Specifikace je
oproti předchozím verzím mnohem lépe zpracovaná. Obsahuje
přehledné seznamy elementů a jejich atributů. Navíc v ní
nalezneme i velice užitečný úvod do syntaxe jazyka SGML,
který je použit při deklaraci jednotlivých elementů a jejich
atributů.