Druhý povzdech nad validitou HTML kódu

Patrick Zandl · 1. duben 2003 Opravit 📃

Když jsem včera sliboval dva povzdechy, dostalo se jen na jeden - na faxování přes Českou poštu. Jen připomínám, že faxování z počítače a po internetu by mi nepomohlo, protože jsem potřeboval ihned odeslat formulář vyplněný rukou a s podpisem a kopii pasu a neměl jsem tu scanner...

Druhý povzdech se týká validity HTML kódu. Netušil jsem, kolik moje zamyšlení nad smyslem validity HTML kodu zdvihne reakcí :) Takže popořadě - Jiří Lavička soudí, že by mi snad nedalo tolik práce udržet těch 10% kodu validního. Právě to je ten nesmysl - nejvíce práce dá oněch 10% chyb - těch 90 % se řeší snadno. Kupříkladu co mám dělat se znakem &, který někdy importuji v přehledu cizích článků. Sám se entitou nenahradí a nahrazovat ho softwarově by znamenalo štourat se do scriptu pro import a to by bylo na hodinu. Tu hodinu, kterou jsem raději věnoval aktualizaci přehledu cen ADSL. Neříkám, kdybych neměl na Marigolda o čem psát, to bych to ladil do aleluja... jenže problém je opačný. A opravovat to neustále ručně? To se mi nechce - nemá to smysl.

Další se pozastavila Sova v síti, to když se M. Prokop ptal, zda je Validní HTML jen pro fanjšmekry? A první věc, kterou mi vytýká je, že nemá Marigold nastavené kódování v metatagu. Jistěže nemá. Marigold používá kódování češtiny na straně serveru. Takže i starší prohlížeče, které neumí dokument překódovat do správné znakové sady, dostanou dokument čitelný. A kdybych dal metatag s natvrdo nastaveným kódováním, mohlo by se to lidem špatně překódovat (vyzkoušeno v praxi). Čili mám na výběr: buďto odstranit chybičku, která dělá problém jen validátorům, nebo nutit lidi se starými prohlížeči k upgrade. Zatím vsázím na to, vykašlat se na metatag kódování.

Dalším problémem je třeba uzavírání tagů P. Tyhle tagy dávám ručně, když vkládám zprávu napsanou v textovém editoru, abych nepoužíval import z Wordu (ten HTML dobře zmrví). A jsem líný dávat koncový tag. Problém? Jen pro validitu. Prohlížeč vše zobrazí.

Což mne donutilo zamyslet se trochu nad smyslem validity. Na povinnost validního kódu nadávám od doby WML - pokud máte WML stránku špatně, mobilní telefon ji ve wapu nezobrazí. Pamatuji si, jak jsme začali všechny možné internetové systémy nutit do generování validního WML a jaký to byl horor. Dodneška je velký problém tvorby složitějšího WAPového obsahu fakt, že stránka se při jediné chybě v zápisu (třeba právě zápisu znaku & jako znaku místo entity) nezobrazí.

Prvotní příčina ovšem nebyla buzerovat lidi, aby dělali validní kód. Prvotní příčina byla umožnit zobrazení stránek i na zařízeních, která mají jednoduchý prohlížeč, jenž si nedomyslí špatně ukončený znak. Opravdu - dnešní velké prohlížeče jsou velké mimo jiné proto, že myslí za tvůrce webu - neuzavřenou tabulku uzavřou, neukončený odstavec ukončí atd. Wap prohlížeče v telefonu nebo hodinkách (fakt to existuje i v hodinkách) se musí nacpat do malé paměti a na pomalý procesor, proto je požadavek na validní kód. Jenže dneska jsou paměti telefonů a procesory hodinek tak velké, že i běžné prohlížeče v těchto zařízeních by s tím problém neměly (a také nemají).

A tak si můžeme vybrat. Buďto budeme důsledně lpět na podle mne zcela nesmyslném mýtu 100% validního kódu, nebo se smíříme s tím, že takové věci za nás mají domyslet stroje a programy. Druhá cesta je podle mne lepší, protože nechává více prostoru lidem na to, co dělat chtějí a netlačí je do něčeho, co dělat musí.

A tak jsem rád, že se mnou souhlasí alespoň Yuhůův weblog, když říká, že Účelnost validace je sporná a klade pro to řadu argumentů. Pozor - neříkám nic o tom, že je nemoudré dělat stránky v CSS - opravdu od té doby, co tu používáme CSS je kód mnohem přehlednější. Ale z mnoha drobných příčin není kód validní. A asi ani jen tak nebude - minimálně do doby, než s tím začnou mít supermoderní prohlížeče problémy... a to doufám nikdy nenastane...

Chcete tyto články emailem?

Twitter, Facebook