W3C, jdi mi s XHTML 2.0 k šípku…

Na druhou stranu se občas rozlítím nad těžkopádností, krátkozrakostí a zjevnou arogancí pánů standardizátorů, zejména z oblasti (X)HTML a přilehlých krajin. Neutralita se tedy nekoná. Pohybuji se na dvou březích poměrně klidné řeky. Každou nohou jsem na jednom. Většinou.

XHTML tápe a napadá na obě nohy

Faktem je, že konsorcium by moc chtělo. Spousta opravdu chytrých lidí tam má opravdu dobré nápady. Jenže výrobci prohlížeců pracují svým tempem a hlavně: mají svá přesvědčení. Zatímco konsorcium čeká na vydání nové verze prohlížeče A, která by mohla podporovat jejich návrh B, je tento návrh přetvořen do formy návrhu Ň, který je poté zavrhnut čí lépe – vrácen k přepracování. Nato vyjde prohlížeč A. Bez podpory návrhu B či Ň. Nemusím připomínat, že návrh Ň dokonale zabijí drobné ústupky velmi chytrých lidí jiným opravdu chytrým lidem. To vše v rámci konsorcia.

Jak jsem zcepeněl

Maličko jsem odbočil. Pročítám tedy nejnovější pracovní návrh specifikace XHTML 2.0 a kroutím nevěřícně hlavou. A v té chvíli se to stalo, můj zrak padl na text, kterému jsem odmítal uvěřit. Cituji ze specifikace (sekce 10. – XHTML Hypertext Module):
„The Hypertext Module provides an element (<a>, pozn. Dero) that traditionally has been used in HTML to define hypertext links to other resources. Although all elements may now play the role of a hyperlink (using the href attribute) or hyperlink anchor (using the id attribute), this element remains for explicit markup of links, though is otherwise identical in semantics to the span element.“

Pro neangličtináře přibližný překlad: No jo, jasněže v (X)HTML vždycky byl tag <a>, ale my jsme vymysleli prima novinku. Jakýkoliv tag teď může mít atribut href, takže bude krásně plnit funkci odkazu. <a> už vlastně není potřeba, protože sémanticky je to to samé co span, ale ve specifikaci ho tedy necháme, kdyby snad někdo potřeboval explicitně vyjádřit hypertextový odkaz.

Možná je v původním textu méně sarkasmu. Nicméně! Pro mě je to srdeční záležitost. Anchor, to je základ webu. Byl ve všech dosavadních specifikacích (X)HTML a snad nikdo nepochyboval, že jeho místo je naprosto neotřesitelné. Odkaz je prostě odkaz. Položka menu není odkaz. Span není odkaz. Možná si řeknete, že jsem staromilec a zpátečník, a já vám to odkejvu, jsem.

Protože co byl původně web? Stránky plné čistého, jen minimálně formátovaného textu, mezi nimiž se dalo procházet. K tomuto procházení sloužil jeden prvek, jehož syntaxe se velmi brzy (první použití anchoru se datuje do roku 1990) ustálila na nám známém anchoru, tedy tagu <a>. Ano, je to už šestnáct let.

Anchor za tu dobu přežil opravdu velké množství hokus pokusů a zvláštních specifikací, jmenujme například nikdy nedokončenou specifikaci HTML+, z níž se potichoučku vyklubalo velmi zajímavé HTML 3.0, které však bylo zavrženo ve prospěch podstatně nudnějšího HTML 3.2. Ve všech těchto specifikacích anchor figuruje, o HTML 2.0 či dokonce původním HTML vůbec nemluvě.

A pokud si myslíte, že konsorcium dělá správnou věc, tedy že šikovně ničí nepotřebné tagy, vysvětlete mi toto.

Co by to přineslo?

Představte si na chvíli, že tag <a> je opravdu pryč. Co uděláte? Za sebe odpovídám, že bych dál spokojeně psal v HTML, ale co kdyby bylo třeba použít novou specifikaci? Objektivně řečeno, mnoho by se nezměnilo, jen místo
a { color: blue; }
a:hover { color: red; }

by se psalo

span[href] { color: blue; }
span[href]:hover { color: red; }

či obecněji

*[href] { color: blue; }
*[href]:hover { color: red; }

Ani jedna alternativní varianta se mi nelíbí. Jsem opravdu staromilec a (X)HTML bez tagu pro hypertextový odkaz si neumím a nechci představovat.

K tagu <a> mne váže jisté citové pouto, nijak to neskrývám. Myslím si, že vyřadit ze specifikace tento tag by byla tak trochu rána do zátylku samotnému webu. Nemyslím si, že hypertextový odkaz bude v nejbližších mnoha letech nepotřebný. A co vy? Velmi mě zajímá vás názor.

Mimochodem, nadpisy (Hx) mají taky namále. Mohly by být vytlačeny kombinací tagů <h> a <section> (viz specifikace). Ještěže není toto nóvum dostatečně praktické…

28. 1. 2006, 13.46 | (X)HTML, CSS, Webová glosa.


Zanechte komentář





Můžete použít Texy! formátování.
Pokud se obsah boxů níže mění, zatímco píšete, potom žádné číslice nevyplňujte. V takovém případě antispam funguje, pouze se prohlížeči nepovedlo skrýt tento box.