Autor | Zpráva | ||
---|---|---|---|
smiesek Profil |
Nedaří se mi prosím zvalidovat následující kod pro toplist, který mám vložený v externím souboru, jehož obsahem je:
<script type="text/javascript"> document.write('<img src="http://toplist.cz/dot.asp?id=0000000&http='+escape(document.referrer)+'&t='+escape(document.title)+'" width="1" height="1" border="0" alt="TOPlist" />'); </script> výpis chyby dle validátoru je následující: Line 17, Column 184: document type does not allow element "img" here …'+escape(document.title)+'" width="1" height="1" border="0" alt="TOPlist" />'); nelíbí se mu znak > validita se týká stránek uvedených v profilu |
||
Trejpa Profil |
#2 · Zasláno: 14. 4. 2015, 08:19:13
smiesek:
Nevím, k čemu potřebuješ validnost, ale je to lomítkem. 1) Můžeš lomítko na konci značky <img> smazat, v HTML se značka neuzavírá: alt="TOPlist">');
2) Můžeš zrušit funkci lomítka jeho escapováním zpětným lomítkem: alt="TOPlist" \/>');
Na funkci skriptu a stránky nemá vliv původní nevalidní ani upravený kód. |
||
smiesek Profil |
Trejpa: děkuju podívám se na to a vyzkouším.
Jinak se snažím na stránkách minimalizovat chyby, a tato chyba se mi tam stále zobrazuje, tak asi to potřebuju pouze k tomu, aby se mi nezobrazovala edit: zkoušela jsem tedy obě možnosti, ale bohužel se následně vypisuje zase chyba upraveného znaku |
||
Trejpa Profil |
#4 · Zasláno: 14. 4. 2015, 08:51:05
smiesek:
Aha, hraješ na XHTML, které prohlížečům posíláš jako vadné HTML. Přistoupím na hru. V XHTML se obsah skriptů dává do CDATA, aby nebyl považován za část dokumentu: <script> <![CDATA[ /* obsah skriptu */ ]]> </script> Prohlížečům je to jedno, zpracují tvé rozbité HTML (pardon, validní XHTML) stejně, jako každý jiný dokument s chybami v kódu. |
||
smiesek Profil |
Trejpa: hm takže to tedy nemám řešit, jestli jsem správně pochopila a nechat tak.
Já jinak na nic nehraju, jen jsem chtěla odladit chybu no |
||
Trejpa Profil |
#6 · Zasláno: 14. 4. 2015, 11:11:49
smiesek:
Validita návštěvníky ani vyhledávače nezajímá, nemá cenu se s ní zdržovat. Pokud tedy neodhalí kritické chyby, na které přijdeš i tak, že se stránka zobrazuje jinak, než byl záměr. Aby prohlížeče braly XHTML jako XHTML, a ne za rozbité HTML, tak se soubor musí posílat jako jeden z podporovaných XML typů pomocí změny MIME souboru. Jenže ne všechny staré prohlížeče XML umí zobrazit a ve všech hrozí nezobrazení celé stránky v případě výskytu jediné chyby. Žádné výhody za tyto komplikace XHTML nepřináší, proto se už také nevyvíjí. Takže si vyber: použitelnost / validnost / XHTML, libovolné dvě možnosti vyloučí zbývající třetí. Nápověda: návštěvníky zajímá jen ta první. Ještě jednou, neřeš to. |
||
Joker Profil |
#7 · Zasláno: 14. 4. 2015, 11:25:24
smiesek:
Hlášky z validátoru neberte automaticky jako chyby, ale jako informativní. Asi jako kontrolky v autě: Že nějaká svítí ještě neznamená, že je nutné něco opravovat. Je nutné vědět, co znamenají a na co upozorňují. Spíš než „Jak tu hlášku odstranit?“ je potřeba se ptát „Co ta hláška znamená?“; Pokud hlášce z validátoru nerozumíte, ale kód v hlavních prohlížečích normálně funguje, bývá bezpečnější nechat kód, jak je. |
||
smiesek Profil |
#8 · Zasláno: 15. 4. 2015, 03:19:19
dobře, děkuju za "vymluvení" mé snahy o odstranění chyby
|
||
Časová prodleva: 10 let
|
0