Język HTML ma w dzisiejszych czasach zdecydowanie najważniejszą pozycję, jeżeli chodzi o języki wykorzystywane do tworzenia stron www. Charakteryzowanie tego właśnie języka należy zacząć przede wszystkim od opisania podstawowych komponentów, które wchodzą w jego skład. Niewątpliwie najważniejszym spośród tych komponentów są znaczniki. Określane są one także mianem tagów. Odznaczają się one dwoma najbardziej charakterystycznymi cechami, którymi są zawartość oraz atrybuty. Każdy z tych dwóch wymienionych właśnie parametrów koniecznie musi spełniać pewne bardzo konkretne wymagania. Jest to niezbędne z tego powodu, że w przeciwnym wypadku dokument nie zostanie zwalidowany w taki sposób, w jaki powinien, jeśli chodzi o zgodność ze standardami obowiązującymi w tym zakresie. Każdy znacznik w praktyce zaczyna się zwykle znacznikiem otwierającym, a kończy – zamykającym. Wspominane wcześniej atrybuty zawsze znajdują się w znacznikach otwierających. Zawartość natomiast jest tym, co znajduje się pomiędzy znacznikami otwierającym a zamykającym. Dodać w tym miejscu trzeba, że istnieją takie elementy, w przypadku których nie jest konieczne stosowanie znaczników zamykających. Można w tym miejscu wspomnieć o takich elementach jak między innymi nowe akapity. Stosowane w języku HTML znaczniki podzielić można generalnie rzecz biorąc na trzy podstawowe rodzaje. Będą to zatem znaczniki strukturalne, prezentacyjne oraz hipertekstowe. Dzięki znacznikom strukturalnych możliwe jest opisanie tak zwanej logicznej struktury danego tekstu. Nie definiują jednak sposobu, w jaki wyświetlać się mają poszczególne elementy. Jeżeli chodzi zaś o znaczniki prezentacyjne, to one ten właśnie wygląd opisują. Z kolei znaczniki hipertekstowe zawierają odnośniki do innych dokumentów ewentualnie do odrębnych części wchodzących w skład tego samego dokumentu. Kolejnym bardzo ważnym – obok znaczników – komponentem wchodzącym w skład języka HTML są rodzaje danych. W obrębie języka HTML wyszczególnić ich można parę. Mogą być one wprowadzane na dwojaki sposób, a mianowicie albo do atrybutów, albo do wartości poszczególnych elementów. Spośród rodzajów danych wymienić można między innymi skrypty, jednostki miary długości, kodowanie znaków, deskryptory mediów, datę, czas i tym podobne. Poza tym śród komponentów języka HTML znajdują się również referencja znakowe oraz encje. Odkąd pojawiła się czwarta wersja języka HTML, to od tej pory encje są definiowane w liczbie przekraczającej dwieście pięćdziesiąt, natomiast jeżeli chodzi o symbole znakowe, to jest ich przeszło milion. Zarówno encje, jak symbole znakowe pozwalają na to, aby określone znaki można było zapisywać jako specjalne stałe. Istnieją również i takie znaki, które zapisać można w sposób dosłowny. Znaki specjalne zapisywać można w alternatywny sposób, co z kolei sprawia, że mogą zostać one interpretowane jako zupełnie zwykłe znaki. Nie muszą być one zatem tym samym traktowane w charakterze istotnych części wchodzących w skład składni językowej. Ze wspomnianymi wcześniej stałymi jest taki problem, że osoby zajmujące się tworzeniem stron www dość często zapominają o korzystaniu z nich. Z tego właśnie zapewne powodu internetowe przeglądarki wykazują pod tym kątem wysoki stopień tolerancyjności. W takich właśnie sytuacjach wprowadzone znaki są przez przeglądarki traktowane w charakterze kodu – nie mniej jednak odnosi się to tylko tych sytuacji, kiedy to dalszy ciąg kodu wyraźnie wskazuje na to, że znaki zostały wykorzystane jako części językowej składni.