Ahoj, potřeboval bych se zeptat jakej je skutečnej rozdíl mezi HTML 4.0 a XHTML - našel jsem něco na internetu ale v něčem so to i odporovalo. Díky za odpovědi...
Dokud MSIE nebude XHTML podporovat jak má, tak je to vlastně jedno. Většina stávajících webů napsaných v XHTML se zobrazuje stejně jako HTML.
XHTML umožňuje např. inline vkládat další objekty, které HTML nezná (matematické vzorce, vektorovou grafiku apod.). Ale jak už jsem uvedl, dokud ho MSIE nebude plně podporovat, neuchytí se.
XHTML se lépe parsuje, protože musí být validní - jinak se vůbec nemusí zobrazit. To je výhoda, protože se tím značně zjednoduší a zrychlí prohlížeč - zejména pro mobilní zařízení.
Neodpustím si poznámku: zjednoduší? a zrychlí? Jsi optimista - trend je: složitěji a pomaleji! Hezký Silvestr :-)
Petr (pyramidy-giza.xf.cz)
Ja bych dodal ke Kit k validite...
XHTML ma podminku, ze se tagy musi uzavirat (jakpsatweb.cz - html - bloky , kde se pise, ze nemusi pro 4.x )
Napr:
xhtml
UL
LI text /LI
LI text /LI
LI text /LI
/UL
P text /P
P text /P
html4x
UL
LI text
LI text
LI text
P text
P text
Oba tyto pripady se zobrazi spravne a asi stejne. Prohlizece si sami doplni konec, kam potrebuji.
Problem ale nastane ve specialnich situacich, kdy uz ukonceni tagu neni jednoznacne a kazdy prohlizec si to ukonci podle toho, jak mu to naprogramovali. Firefox vetsinou spravne, Explorer jako kdy, protoze ma jina pravidla atd.
Priklad
TABLE
TD text /TD
TD text /TD
P text
Jeden prohlizec ti udela
TABLE
TR
TD text /TD
TD text /TD
/TR
/TABLE
P text /P
Jiny prohlizec muze treba udelat
TABLE
TR
TD text /TD
TD text /TD
TD P text /P /TD
/TR
/TABLE
protoze P je inline-blok prvek a TD totez, takze muzou byt v sobe
A jeste se muze stat
TABLE
TR
TD text /TD
TD text /TD
/TR
TR TD P text /P /TD /TR
/TABLE
nebo
P text /P
TABLE
TR
TD text /TD
TD text /TD
/TR
/TABLE
=peta=
Prohlizec to ale udela jen proto, ze predpoklada, ze kazdy druhy webmaster/webdesigner/koder je debil a neni schopny napsat kod validne..
Freeze (dreamer.kvalitne.cz)
Vidis, a ja si stale myslim, ze nejasna pravidla ukoncovani u html4 zpusobuji prave problem, ze tvurce pise kod spatne. Navic vetsinou ve skole ti nejenze neda ucitel nastroj obarvujici syntaxi, tlacitkove vkladani tagu a pod, ale ani to poradne nevysvetli a nevyzkousi si vsechny, zda to spravne pochopili na nejakem prikladku. Na to proste neni cas. Pak si to kazdy tvori po svem.
Neco jineho je treba programovani, pascal a pod. Tam nastroje v celku jsou a kdyz ne, tak aspon uz clovek zna nastroj na obarvovani.
Kazdopadne chyba se tresta nespravnou funkci, takze si to kazdy hlida :)
Nejjednodušší je nevalidní stránku prohnat programem Tidy. Ten se vlastně snaží napodobit prohlížeč, ale výstupem není zobrazení, ale validní stránka. Na tom výstupu se pak dá poznat, jak se některé špatně napsané konstrukce dají špatně pochopit.
Nejlepší český článek na tohle téma je http://atd.havrlant.net/jak-na-dokonale-xhtml
Pokud by se XML parserem rozebíraly jen well-formed dokumenty, napsat parser by bylo hračkou pro malé děti. Ale ve stutečném XHTML to tak jednoduché není: http://www.webylon.info/K.17