** ... a já odmítám trávit spoustu času věnování se přepisování & na ampy, když to stejně všude funguje... **
Funguje to jen do té doby, než za ten & napíšete (nebo se vygeneruje) řetězec, který je názvem nějaké HTML entity. Krásný příklad můžete vidět na testovací stránce. První dva odstavce vypisují obsahy proměnných tak, jak je dostane PHP. Následující odkazy se liší tím, zda je v nich použit jen & (špatně) nebo & (správně). Z mnou testovaných browserů ten "špatný" odkaz nezvládne např. IE6 a Mozilla. Dobře napsaný odkaz zvládají bez problémů nejnovější verze IE, Mozilly i Opery, starší bohužel nemám k dispozici. Lynx zvládne obojí, Links má bohužel problémy s tou správnou variantou.
Příklad s odkazem jsem uvedl proto, že část lidí ještě pochopí, proč je vhodné psát & uprostřed textu, ale už jim nedochází, že stejný (ne-li větší) problém je i uvnitř URL.
** Ale proč bych měl být omezován standardem XHTML? **
Žádným standardem XHTML omezován nejste, můžete použít libovolnou položku ze List of valid DTDs. Výhoda XHTML oproti ostatním (v kontextu validace dokumentů) je hlavně v tom, že má striktnější syntaxi a tedy se lépe validátoru hledají chyby.
** Zvykl jsem si zapisovat tagy velkými písmeny. Proč nesmím? **
Můžete, ale ne v XHTML. Striktnost XHTML umožňuje psát jednoduché a malé prográmky, které jej dokáží zpracovat. Nástroje pro klasické HTML mus být nutně složitější a větší, což může leckde vadit.
** Proč nebudou v XHTML 2, když už tedy nebude zpětně kompatibilní přejmenovány "logické" tagy, jako strong a spol, když si v současnosti musím sakra rozmyslet, jestli napíšu desetkrát [b] nebo desetkrát [strong], když ten druhý zápis je mnohem delší. Pokud vím, [s] je volné... **
Tak to víte špatně, protože [s] znamená totéž co [strike], přeškrtnuté písmo. Tento element se vyskytuje v HTML 4.01, ale je "deprecated"
** Proč mi validátor vykazuje jako chybu uvedení filteru, když to zobrazování na ne-MS systémech neohrozí. **
Validátor pouze otestuje, zda dokument odpovídá DTD. Nějaké programy zpracovávající (X)HTML by teoreticky mohly mít s neznámými atributy problémy, takže se všechny odchylky od DTD hlásí jako chyby. Validátor neví nic o žádných MS a ne-MS systémech, ledaže by obsahoval nějakou umělou inteligenci :-)
** Proč chce bezvýhradně všude ALT a nevěří mi, že ten obrázek je opravdu jenom čtyřpixelová opakující se šachovnice? **
Protože je v DTD napsáno, že atribut "alt" je povinný. Jinak validátor opravdu netuší, CO na tom obrázku je, to svede snad jen neuronová síť složitá jako náš mozek :-) V případě grafického prvku na stránkách se doporučuje prázdný alt, tj. alt="", kdybyste nepoužil alt vůbec, tak místo něj některé (textové) prohlížeče napíšou třeba jméno souboru.
** Proč HTML validátor nepřeskočí JS kód a pak háže stupidní chyby typu tag nebyl vůbec započat? **
Uvědomte si, že v takovém případě mícháte dva jazyky, (X)HTML a JavaScript (nebo i jiný skriptovací jazyk), a to je pěkný oříšek nejenom pro HTML validátor. Nejlepším řešením je dát JS kód do samostatného souboru, případně jej dát mezi <![CDATA[ a ]]> (obojí musí být v komentáři příslušného skriptovacího jazyka), nebo escapovat nebezpečné znaky (menšítka, většítka, lomítka) pomocí zpětného lomítka, zápisem &entita; nebo zapsat tag do dvou stringů a ty před výpisem spojit (concatenovat).
** Mám opravovat kód, který nebyl uznán validním jenom proto, že je to způsobeno chybou na straně validátoru? **
Zatím nevidím jedinou známku toho, že byste na nějakou chybu validátoru narazil.
** A má mi pak právo každý druhý člověk říkat, jaký že to jsem blbec, že nemám standardní web? **
Ano, právo vyjadřovat své názory nám zaručuje Listina základních práv a svobod :-)