Yuhů dnes v článku Nový web o sémantice nejen upozornil na stránky semantika.name, ale taky vyjádřil názor, se kterým jsem už delší dobu zcela ztotožněn, totiž že HTML není sémantický jazyk. Pár sémantických značek sice máme (nadpisy, seznamy, citace,…), ale řada dalších zcela chybí (menu, patička apod.). Pokud to tedy jde, měly by se používat odpovídající tagy – např. není správné místo tagu pro nadpis použít div s tučným fontem. Na druhou stranu je při současné situaci asi docela zbytečné bazírovat na detailech – proto moc nejsem nakloněn argumentu, že tabulky jsou pro layout špatné kvůli chybně použité sémantice tagu table. Existuje řada jiných validních důvodů, proč tabulky nepoužít, ale nízká sémantika k nim podle mého názoru nepatří.
Jak lze dnes řešit problém nedostatečné sémantiky HTML? Osobně částečné řešení vidím ve využití serverové technologie ASP.NET – třeba takové <asp:Calendar> je nádherně sémantické a ASP.NET se už samo postará o to, aby tuto značku nějakým způsobem prohlížeče vykreslily. Význam sémantiky se tak přesouvá z prohlížeče na vývojáře, což se mi líbí.
Značka pro menu existuje.
Jakých validních důvodů? Nechápu. Špatná sémantika je jeden z důvodů, neříkám ale, že je to hlavní důvod.