Validní CSS?

Pachollini, 21. října 2004, 21:58

V poslední době se ve webařských kruzích rozeběhla debata o tom, zda je podtržítkový hack v CSS validní. Věhlasní teoretikové hájí názor, že nikoliv a odvolávají se na autority nejvyšší, jejich snad ještě věhlasnější odpůrci oponují promyšlenou argumentací. Spěchám tedy se svou krátkou troškou do mlýna, aby mi tentokrát neujel vlak.

Půjdu na to z druhé strany. Proč by měl člověk vůbec psát validní kód? Hlavním důvodem je jistě kompatibilita. Normy jsou tu od toho, aby tvůrci obsahu webu i zařízení, která s tímto obsahem pracují, našli společnou řeč, což je základní podmínka pro to, aby se obsah dostal ke svému uživateli a uživatel zase k obsahu. U HTML normy (DTD) určují, jaké značky a kde se v dokumentu smí použít. Pokud někdo použije jiné značky nebo je použije jinak, vzniká zmatek, neboť tento stav normy neošetřují a browser, který takový obsah zpracovává, se může chovat jakkoliv, od snahy nějak se s tím vypořádat až po nezobrazení dokumentu. Proto je v případě HTML dle mého názoru velmi záhodno normy dodržovat.

U kaskádových stylů je situace poněkud odlišná. CSS má definovaná určitá syntaktická pravidla, která např. říkají, kde se píše středník a kde složená závorka. Specifikace CSS mimo jiné dále vyjmenovává konkrétní vlastnosti, definuje jejich význam a předepisuje, jak je interpretovat. Říká rovněž, že vlastnosti, kterým interpret nerozumí, musí ignorovat. A finta podtržítkového hacku spočívá právě v tom, že se použijí neexistující vlastnosti, které však jeden prohlížeč z neznámých důvodů interpetuje. Ostatní je podle normy ignorují a budou to dělat i nadále.

Když se oprostím od „validačního fetišismu“ a  akademických otázek, zda to či ono je nebo není validní, docházím k k závěru, že podtržítkový hack neprotiřečí hlavnímu účelu norem, kterým je kompatibilita, a tudíž není důvod ho nepoužít. Musím ovšem přijmout riziko, že libůstky jednoho nevyzpytatelného prohlížeče se v budoucnu mohou změnit a já se s tím budu muset nějak vypořádávat. Ale možná také ne. Možná, že osvícení tvůrci příštích verzí té bestije začnou ctít standardy včetně správného zápisu vlastností CSS.

Co vy na to?

Zatím žádné komentáře.

Aktuální Seky

.