HTML (ang. HyperText Markup Language)

HTML (ang. HyperText Markup Language) – hipertekstowy język znaczników, obecnie szeroko wykorzystywany do tworzenia stron internetowych.

Pierwsza, publicznie dostępna, specyfikacja języka HTML, nazwana HTML Tags (pol. Znaczniki HTML), została zamieszczona w Internecie przez Bernersa-Lee w 1991. Zawiera 22 znaczniki, tworzące początkowy, prosty szkielet HTML-a. Trzynaście z tych elementów istnieje do tej pory w specyfikacji HTML 4.

HTML został napisany w oparciu o język SGML, jednak nie posiadał formalnej definicji w SGML-u. Sytuacja zmieniła się w połowie 1993, kiedy organizacja IETF opublikowała pierwszą propozycję specyfikacji języka HTML autorstwa Bernersa-Lee i Dana Connolly – Hypertext Markup Language (HTML) Internet-Draft (pol. szkic) – zawierającą opis gramatyki w postaci SGML Document Type Definition (pol. definicja typu dokumentu). Opierając się na tym dokumencie twórcy przeglądarek eksperymentowali z HTML-em modyfikując atrybuty istniejących już znaczników oraz dodając całkowicie nowe.

Komponenty języka HTML

Język HTML składa się z kilku kluczowych komponentów:

znaczników (i ich atrybutów),

Większość atrybutów elementów składa się z par nazwa-wartość, rozdzielonych znakiem "=", zawartych w znaczniku otwierającym elementu, po jego nazwie. Wartość może być zawarta w pojedynczych lub podwójnych cudzysłowach. Przy niektórych wartościach cudzysłowy mogą być pominięte (tylko w specyfikacji HTML, nie XHTML), jednak nie jest to zalecane, a wręcz praktyka taka uznana jest na niebezpieczną. W przeciwieństwie do atrybutów w postaci par nazwa-wartość istnieją atrybuty mające wpływ na element poprzez samo ich zawarcie w znaczniku otwierającym (np. ismap atrybut dla znacznika img

typów danych,

HTML definiuje kilka typów danych, wprowadzanych jako wartości elementów lub atrybutów. Są to m.in. skrypty (script data), dane arkuszy stylów (stylesheet data), identyfikatory, nazwy, adresy URI, liczby, jednostki miary długości, języki, deskryptory mediów, kolory, kodowania znaków, data i czas, itp.

referencji znakowych,

Począwszy od wersji 4.0, HTML definiuje listę 252 encji oraz 1114050 symboli znakowych, pozwalających na zapisanie określonych znaków za pomocą specjalnych stałych. Niektóre znaki można również zapisać dosłownie. Znak wprowadzony dosłownie i jego odpowiednik w postaci określonej stałej uznawane są za równoważne i są identycznie renderowane.

deklaracji typu dokumentu.

Aby uaktywnić definicję typu dokumentu (DTD) do celów poprawnej walidacji utworzonej strony, a także w celu uniknięcia działania przeglądarek w trybie quirks, dokument powinien rozpoczynać się deklaracją typu dokumentu (nieformalnie DOCTYPE). DTD, do którego odwołuje się sekcja DOCTYPE, zawiera gramatykę i zasady wykorzystywania znaczników w dokumencie podporządkowanemu określonemu DTD. Większość graficznych przeglądarek korzysta z sekcji DOCTYPE, a także innych dodatkowych informacji, warunkując tryb renderowania danej strony.

Przykład:

W HTML5:



Powyższa deklaracja odwołuje się do wersji Strict DTD specyfikacji HTML 4.01, która nie posiada znaczników prezentacyjnych, takich jak , wykorzystując w tym celu kaskadowe arkusze stylów oraz znaczniki span i div Walidatory kodu odczytują DTD w celu poprawnego sparsowania dokumentu i przeprowadzenia jego walidacji.