Tvořte si je, v čem chcete a jak chcete, ale prohlížečům nemá smysl posílat cokoliv jiného než HTML.
Jinými slovy potvrzujete, že XHTML je potřebný a v současnosti asi nezastupitelný jazyk pro web. Nechápu, na základě čeho jste dospěl k závěru, že prohlížečům nemá smysl XHTML posílat.
O tom se více rozpovídám ve druhém dílu.
Tedy nejdůležitější argument zůstává (prozatím) nezodpovězen.
Nechápu, na základě čeho jste dospěl k závěru, že prohlížečům nemá smysl XHTML posílat.
Kvůli tomuto vznikají bouře ve sklenici vody v diskusi na jakpsatweb. Jde o to, že i když napíšete XHTML musíte ho nakonec stejně poslat jako text/html, aby to zchroupal IE. A otázkou je, jestli XHTML dokument poslaný jako text/html je XHTML (tedy založený na XML) nebo je jen zprzněné HTML.
Ale když se v tom vyzná on, proč ne.
Protože takoví pracovníci jsou nepoužitelní. Dělají práci, kterou po nich nikdo nepřevezme a když pak onemocní nebo je když je vyhodí z firmy, tak se to po nich musí celé předělávat.
Jestli si myslíš, že ti k obživě bude stačit plichtit si sám na koleně amatérské webíky na zakázku, tak se připrav na chudobu.
Chápu, že vám XML usnadňuje práci, ale vy jste jen jedna polovina řetězce. Ta druhá — prohlížeče — vám na XML při „text/html“ dlabe.
To je právě další rozšířený omyl. Nedlabe. MIME typ je opravdu celkem podružný. Týká se jenom HTTP a server dokonce nemusí poslat žádný. Rozhodující je právě DOCTYPE.
Že prohlížeč zpracuje i XHTML, kde některé koncové značky vynecháte a některé neexistující atributy použijete, znamená pouze to, že se snaží chyby v kódu co nejlépe překonat. Ale to dělá pouze proto, že mu nic jiného nezbývá a ne proto, že by kašlal na to, že je to XHTML. V důsledku se to tak jeví, ale je v tom významný rozdíl.
Na jiném místě říkáte, že <!DOCTYPE> určuje jazyk, což ale přímo nesouvisí se zdejším tvrzením. Na rozlišení HTML od XHTML nestačí ani <!DOCTYPE>, ani deklarace jmenného prostoru, ani XML deklarace. Bez MIME typu nevíte nic, můžete si maximálně tipnout. Každý jazyk má jinou syntaxi (ač podobnou).
„Že prohlížeč zpracuje i XHTML, kde některé koncové značky vynecháte a některé neexistující atributy použijete, znamená pouze to, že se snaží chyby v kódu co nejlépe překonat.“
V XHTML musí chybějící koncová značka zajistit smrt a naopak neexistující atribut nikdy nesmí způsobit problémy (maximálně způsobí nevaliditu). Tak to i funguje.
Při MIME typu „text/html“ skutečně všechny prohlížeče vždy užívají HTML parser. Neporozumí zápisu <div /> — pochopí jej jako začátek elementu. Nikdy nepřeloží entity uvnitř <script>u. V DOMu vrací document.doctype vždy null. Jak se tedy pozná, že prohlížeč skutečně zpracovává XHTML?