XHTML/Podobieństwa z HTML

Z Wikibooks, biblioteki wolnych podręczników.

XHTML jest językiem zgodym zarówno w przód, jak i wstecz. Skupimy się jednak wyłącznie na zgodności wstecz. Zapewnia ona, że poprawny dokument XHTMLa, z dobrze dobranym typem dokumentu, będzie dokumentem HTMLa. Dzięki temu, możemy stworzyć dokument XHTMLa bez obawy o to, że nie zostanie on otworzony przez jakąś przeglądarke internetową.

Dokument XHTML musi posiadać: definicję typu dokumentu, główny korzeń, deklarację przestrzeni nazw,a także sekcję body(tzw. ciało dokumentu). Sekcja nagłówka jest opcjonalna. Niektórzy ludzie jednak uważają, iż nie należy stosować sekcji body, gdyż w zasadzie nic ona nie robi. To prawda. Wszystkie informacje odnośnie wyglądu, powinny być przechowywane w oddzielnym pliku. Jednak dla zgodności, lepiej jest używać w swoich dokumentach ciała dokumentu.

Zarówno w języku HTML, jak i XHTML stosujemy znaczniki. Znacznik, to fragment dokumentu, rozpoczynający się od znaku mniejszości("<"), a kończący się znaku większości(">"). Znacznik stanowi najbliższa para tych znaków, ułożona w odpowiedniej kolejności, gdzie żaden z tych znaków nie mieści się między znakami apostrofu lub cudzysłowia.

Główną różnicą w stosunku do HTML jest konieczność zakończenia każdego znacznika. HTML nie określał jednoznacznie, które elementy powinny zostać zakończone, a które nie mogą zostać zamknięte. W XHTMLu każdy znacznik musi zostać zamknięty. Istnieje jednak bardzo prosta i intuicyjna metoda domykania znaczników. Wystarczy przed znakiem większości wstawić slash. Tego samego elementu nie można jednak zamknąć dwa razy. Oznacza to, że nie można napisać:

<img src="smile.gif"/></img>

Zamiast tego, stosuj:

<img src="smile.gif"/>

Można oczywiście, jeżeli chcesz wprowadzić treść do elementu strony, zamykać go starymi metodami. Jest to niekiedy też przydatne, by utrzymać zgodność z językiem HTML lub ominąć błędy przeglądarek:

<div>Tekst</div>
<link rel="stylesheet" type="text/css" href="styl.css"></link>

Obecnie w dokumentach opisywanego języka stosuje się definicję typu dokumentu. Element ten wprowadzono, by w przyszłości nie było problemów z odróżnieniem dokumentów poszczególnego typu.