Autor Zpráva
imploder
Profil
Mám HTML Tidy a nevím, jak ho donutit, aby v HTML 4.01 transitional hlásilo neuzavřené odstavce (tagy <p>, kde chybí </p>, příp. se kříží) a takové. Prostě i ty, co HTML4 transitional narozdíl od XHTML dovoluje mít neuzavřené, ale já to chci mít v pořádku, protože si myslím, že to hapruje. Je na to nějaká volba? (v manuálu jsem ji nenašel, jenom že to tyhle kontroly umí)

Případně existuje nějaký jiný spolehlivý nástroj (validátor), který by upozornil na jakékoliv neuzavřené párové tagy i v HTML4 transitional?
Miloš
Profil
Jednoduché – změň !DOCTYPE na strict a prožeň stránku validátorem.
Mimochodem – proč si myslíš, že neuzavřené tagy haprují? Nevěř chimérám.
Chamurappi
Profil
Reaguji na Miloše:
změň !DOCTYPE na strict a prožeň stránku validátorem
Strict DTD se v nepovinnosti značek od Transitionalu neliší.

proč si myslíš, že neuzavřené tagy haprují? Nevěř chimérám.
Jsi si jist, že značka <table> hned za <p> zavře ten odstavec ve všech prohlížečích? Drobné nekompatibility existují.


Reaguji na implodera:
Můžeš si napsat vlastní DTD založenou na HTML 4.01 a použít libovolný validátor.
Miloš
Profil
Chamurappi
Strict DTD se v nepovinnosti značek od Transitionalu neliší.
Pravdu díž; nicméně s malou opravou – ať si nechá stránku validovat jako XHTML a výsledek je přesně onen ten.
Bubák
Profil
ať si nechá stránku validovat jako XHTML a výsledek je přesně onen ten
A jako bonus vyskočí chyby na neuzavřené nepárové značky, jako třebas BR, HR, IMG, INPUT a pár dalších drobností.
Miloš
Profil
Bubák
A jako bonus…
Je to lepší než drátem do oka. Když si pak nechá seskupovat podobné hlášky, bude mít švecičko pohromadě.
imploder
Profil
Miloš
proč si myslíš, že neuzavřené tagy haprují? Nevěř chimérám.
Máš pravdu, rozhozený layout byl něčím jiným, značky byly v pořádku. Ale předtím jsem měl myslím na jednom místě rozhozený layout právě kvůli neuzavřenému prvku - už nevím, který to byl. Myslel jsem, že by to mohlo mít vliv. A navíc nechci nechávat neuzavřené značky obecně - snadněj se tam pak zanesou chyby (není - aspoň pro člověka - jasné, co kde končí).

Zkusil jsem pustit Tidy na soubor se změněným doctypem z HTML4 na
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "xhtml11.dtd">
a výsledek nebyl uspokojivý: nahlásil každý "neuzavřený" meta-tag a u tabulky že chybí "summary" (to hlásí i u HTML 4.01), ale neuzavřený <p> právě před tabulkou nebo před dalším odstavcem nenašel. I když např u <a> upozorní.

Chamurappi
Můžeš si napsat vlastní DTD založenou na HTML 4.01 a použít libovolný validátor.
No, tomu přístupu "co si neuděláš sám, to nemáš" bych se u takové stadnardní věci rád vyhnul. Nebylo by to tak trochu s kanónem na vrabce? To si radši tu kontrolu, že si odpovídají párové značky, naprogramuju.

Kdyby někdo měl/znal něco takového už hotového, tak ať sem prosím dá vědět. Děkuji.
Bubák
Profil
imploder
Kdyby někdo měl/znal něco takového už hotového, tak ať sem prosím dá vědět.
Chamurappi poradil nejelegantnější postup.
DTD pro HTML 4.01 je tady http://www.w3.org/TR/html4/loose.dtd
a tady http://www.w3.org/TR/html4/strict.dtd

Pro jistotu odkazy, jak správně číst v DTD:
http://www.sovavsiti.cz/download/sova0208.txt
http://www.sovavsiti.cz/download/sova0209.txt

Myslím si, že není těžké přepsat třebas:
<!ELEMENT LI - O (%flow;)*             -- list item -->

na to, co požaduješ, ve tvém případě:
<!ELEMENT LI - - (%flow;)*             -- list item -->

Pozměněnou DTD někam uložíš, na validované stránce pozměníš doctype! a předhodíš validátoru.

Návrh na vylepšení českého validátoru: co tak přidat do rozšířeného rozhraní volbu dtd souboru (URL DTD, načíst DTD).

Chamurappi
Jsi si jist, že značka <table> hned za <p> zavře ten odstavec ve všech prohlížečích? Drobné nekompatibility existují.
Tak to je mazec, to jsem netušil, kdo chce, ať zkusí v různých prohlížečích, více srandy je ve quirku:
<style>
p {color: red;}
p table {color: navy; border: 9px double red; width: 120px; height: 50px;}
</style>
</head>
<body>
<p>Lorem ipsum dolor sit amet
<table>
<tr>
<td>Text v tabulce
</table>
Text za tabulkou
Chamurappi
Profil
Reaguji na Bubáka:
co tak přidat do rozšířeného rozhraní volbu dtd souboru (URL DTD, načíst DTD)
Doplnění možnosti zadat adresu DTD mám v plánu. Na localhostu mi leží už hodně dlouho rozvrtaná verze, která dovoluje nadefinovat si vlastní test s použitím kteréhokoliv z dostupných validačních mechanismů a profiltrovat chybové hlášky, ale nějak se nemůžu dokopat k tomu, abych takovéto všehoschopné hračce dodělal všehoschopné uživatelské rozhraní.

Pozměněnou DTD někam uložíš
Já jsem si ji uložil sem. Zároveň jsem naučil jednorožce, kde ji má hledat, pokud si někdo nastaví typ testu „HTML 4.01/P Transitional“ (do viditelných možností jsem tuto psedoverzi nezařadil, je nutné zadat ji přes URL do parametru „type“).


Reaguji na implodera:
tomu přístupu "co si neuděláš sám, to nemáš" bych se u takové stadnardní věci rád vyhnul
Co si neuděláš sám, to ti udělá někdo jiný :-)

Vaše odpověď

Mohlo by se hodit

Pokuste se již v titulku uvést název programu související s tématem.

Prosím používejte diakritiku a interpunkci.

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