HTML (Hyper Text Markup Language) – belgili til bo’lib, ya'ni bu tilda yozilgan kod o’z ichiga mahsus ramzlarni mujassamlashtiradi. Bunday ramzlar hujjat ko’rinishini faqatgina boshqarib, o’zi esa ko’rinmaydi. HTMLda bu ramzlarni teg (teg – yorliq, belgi) deb ataladi. HTMLda hamma teglar ramz chegaralovchilar (< , >) bilan belgilanadi. Ular orasiga teg identifikatori (nomi, masalan B) yoki uning atributlari yoziladi. Aksariyat teglar jufti bilan ishlatiladi. Ochuvchi tegning jufti yopuvchi teg. Ikkala juft teg faqatgina yopuvchi teg oldidan
«slesh» (“/”) belgisi qo’yilishini hisobga olmaganda, deyarli bir xil yoziladi. Juft teglarning asosiy farqi shundaki, yopuvchi teg parametrlardan foydalanmaydi. Juft teg yana konteyner deb ham ataladi. Juft teglar orasiga kiruvchi barcha elementlar teg konteyneri tarkibi deyiladi. Yopuvchi tegda zarur bo’lmagan bir qator teglar mavjud. Ba'zida yopuvchi teglar tushirib qoldirilsa ham zamonaviy brauzerlar aksariyat hollarda hujjatni to’g’ri formatlaydi, biroq buni amalda qo’llash tavsiya etilmaydi. Masalan, rasm qo’yish tegi , keyingi qatorga o’tish
, baza shriftini ko’rsatish va boshqalar o’zining , va hokazo yopuvchi juftlarisiz yozilishi mumkin. Noto’g’ri yozilgan tegni yoki uning parametri brauzer tomonidan rad qilinadi. (bu brauzer tanimaydigan teglarga ham taalluqli). Masalan, tegkonteyneri faqatgina freymlarni taniydigan brauzer tomonidan hisobga olinadi. Uni tanimaydigan brauzer tegini tushunmaydi. Teglar parametr va atributlarga (inglizcha. attribute) ega
bo’lishi mumkin. Ruxsat etilgan parametrlar yig’indisi harbir teg uchun individualdir. Parametrlar quyidagi qoida asosida yoziladi:
agar parametr mohiyatida probel ishtirok etgan bo’lsa, u holda qavs, albatta yoziladi. Parametr mohiyatida (teg va parametrlar nomidan farqli ravishda) ba'zida yozuv registri muhim bo’ladi.