Autor Zpráva
DethLev
Profil *
Zdravím.

Potřeboval bych poradit. Dělám stránky v CSS. Snažím se mít to podle XHTML. Problém je v tom, že si nevím rady s tím, jak deklarovat DOCTYPE, případně ostatní co musí být v hlavičce (prolog?). Moc tomu nerozumím. Díky za případnou radu.
Joker
Profil
Podle varianty XHTML:
1.0 Strict: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

1.0 Transitional: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

1.0 Frameset: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

a případně další. Vybrat je možno kteroukoliv, ale asi bych volil mezi XHTML 1.0 Strict a Transitional.

Ohledně XML prologu, při kódování UTF-8 se prolog může vynechat, což bych preferoval (UTF-8 + žádný XML prolog)
Chamurappi
Profil
Reaguji na DethLeva:
XHTML nedoporučuji. Nemá dobrou podporu napříč prohlížeči, ani ve vyhledávačích. Pokud cílové zařízení umí XHTML a myslí si, že našlo chybu (což nemusí znamenat, že tam chyba je), tak nezobrazí dokument vůbec (takhle).

Můžeš nanejvýš užívat HTML s <!doctype>m z XHTML, ale to nemá moc smysl, protože prohlížeče i vyhledávače to pak vnímají jako pokažené HTML a všechna pracně dopsaná lomítka si potichu odmýšlí. Deklarace <!doctype> totiž neurčuje značkovací jazyk, ale jen předpis pro validátor + entity (&nbsp; a spol.).

Jiná věc je vykreslovací režim. Současné prohlížeče mají dva režimy interpretace CSS, které přepínají podle (ne)přítomnosti určité <!doctype> deklarace. Předpokládám, že tvůj kód je odladěný pro quirk režim. Dopsání <!doctypu>, který přepne vykreslovací režim na tzv. standardní (což zařídí kterýkoliv z Jokerem uvedených), změní pojetí stylopisu prohlížečem a rozsype ti layout v Exploreru, Mozille i Opeře. Doporučuji proto neuvádět <!doctype> žádný. Stejně je to jen bašta pro validátory a s nimi nikdo nebrouzdá.


Reaguji na Jokera:
Žádné doporučení XHTML nedovoluje vynechat XML prolog. Smíš vynechat jen XML deklaraci, pokud kódování určuje nadřazený protokol.
DethLev
Profil *
Děkuji vám. Mám v tom jasno. Zatím nebudu cpát do kódu žádný DOCTYPE. Nakonec web mi běží tak jak má i bez toho, aniž bych měl DOCTYPE uveden. Do budoucna si to nastuduju. Díky ještě jednou.
Joker
Profil
Chamurappi
Projednou bychom si to slovíčkaření mohli odpustit, ne?

DethLev
To je taky varianta.
Ještě mimo téma DOCTYPE, ale k tomu, že web "běží jak má": dal bych si pozor, jestli "běží jak má" i návštěvníkům s jinou konfigurací, než na které se web vytváří.
Chamurappi
Profil
Reaguji na DethLeva:
Bacha na to, odkud si to budeš nastudovávat. Kolem této věci vznikla řada mýtů.

Reaguji na Jokera:
Nemohli. XML prolog se skládá z XML deklarace a <!DOCTYPE> deklarace.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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