Autor Zpráva
Miloš
Profil
Oba validátory se vztekají nad úsekem HTML kódu, který:
1) je imho bezchybný
2) se nachází /* zakomentovaný v css */

Kde je chyba?
Z následující ukázky jsem pro přehlednost vyhodil všechny nadbytečnosti:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style type="text/css">
   /* <a href="#" title="Zpátky na úvodní stránku"><span id="h1_txt">Šla kočička na hory</span><span id="h1_img"></span></a> */
</style>
<title>Validátor je mrch</title>
ahoj
Chamurappi
Profil
Reaguji na Miloše:
Podle SGML by měla první uzavírací značka v elementu, jehož obsah je deklarovaný jako CDATA, ukončovat tento element. Stejně tak řvou validátory na <script>document.write("</a>")</script>, protože za prvním nalezeným „</“ by chtěly vidět „script“ — obvykle se to řeší escapováním „<\/“. U stylů jsem tento zádrhel ještě nikdy neviděl.

V praxi se prohlížeče koukají na název uzavírací značky a poznávají, pokud uzavření nepasuje na otevřený element, takže tahle chyba je chybou jen v říši teorie.
Timy
Profil
Miloš
„2) se nachází /* zakomentovaný v css */“
Komentář není podstatný, HTML validátor ani neví, že je to komentář.

Zbytek už byl objasněn :-)
Miloš
Profil
Díky za objasnění, zase jsem o něco chtřejší.
Leinad
Profil
„</“ by chtěly vidět „script“ tak mělo by se používat CDATA, ale podle mého názoru by "se validator měl vzbudit" až uvidí </script>. Když si představím prohlížeč, jak musí řešit escape kvůli W3C (-milion jiných věcí jako box model).
Měsíček
Profil
"Když si představím prohlížeč, jak musí řešit escape kvůli W3C (-milion jiných věcí jako box model)."

Jaký "escape"? ;o)
Chamurappi
Profil
Reaguji na Leinada:
tak mělo by se používat CDATA
Jestli tím myslíš sekci <![CDATA[ … ]]>, tak ta v tomto případě nijak nezapůsobí.

podle mého názoru by "se validator měl vzbudit" až uvidí </script>
Kdyby byl standard ISO SGML napsán takto, tak by W3C zřejmě v HTML 4 povolilo element <xmp>, protože pro něj v praxi platí stejná syntaktická pravidla jako pro <script> a <style>.

Mimochodem, problém s „</“ ve skriptech vyvolává po celém světě nejčastěji pochybnosti o neomylnosti validátoru. Na mailing-listu oficiálního validátoru a v Bugzille W3C jsou stovky nahlášených „chyb“ na téma „validátor přeci nemá kontrolovat obsah <script>u“.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0