HTML (па-ангельску: Hypertext Markup Language) — мова разьметкі гіпэртэксту, асноўная мова разьметкі вэб-старонак (Канструктар сайтаў) у інтэрнэце. Яна прадастаўляе правілы апісаньня структуры тэкставай інфармацыі ў дакумэнце шляхам вызначэньня пэўнага тэксту ў якасьці спасылак, загалоўкаў, абзацаў, сьпісаў і гэтак далей і дадаваньня да гэтых тэкстаў інтэрактыўных форм, убудаваных малюнкаў і іншых аб’ектаў. HTML запісваецца ў форме тэгаў, узятых у вуглавыя дужкі. У пэўнай ступені HTML таксама можа апісваць выгляд і сэмантыку дакумэнта, а таксама ўключаць убудаваныя код на скрыптавых мовах (такіх як JavaScript), якія могуць уплываць на паводзіны вэб-браўзэраў і іншых апрацоўнікаў HTML-дакумэнтаў.

HTML часта выкарыстоўваецца для азначэньня зьмесьціва MIME-тыпу text/html і таксама ў больш шырокім значэньні як у сваёй форме, спадкаванай ад XML (кшталту XHTML вэрсіі 1.0 альбо пазьнейшай), так і ў форме, спадкаванай наўпрост ад SGML (кшталту HTML вэрсіі 4.01 і ранейшай).

Па пагадненьнях файлы, якія ўтрымліваюць html-дадзеныя, выкарыстоўваюць пашырэньні .html або .htm.

Гісторыя HTML

рэдагаваць

У 1980 годзе фізык Тым Бэрнэрз-Лі, які на той час зьяўляўся незалежным супрацоўнікам Эўрапейскай арганізацыі ядравых дасьледваньняў (CERN), прапанаваў прататып сыстэмы для выкарыстаньня і абмену дакумэнтамі дасьледнікамі арганізацыі. У 1989 годзе Бэрнэрз-Лі і інжынэр арганізазацыі Робэрт Каё кожны адправілі некалькі прапаноў гіпэртэкставай сыстэмы, створанай у межах інтэрнэту, якія прадастаўлялі падобную функцыянальнасьць. У наступным годзе яны стварылі сумесную прапанову (праект WorldWideWeb — W3)[1], якая была прынятая Эўрапейскай аргаганізацыяй ядравых дасьледваньняў.

Першыя спэцыфікацыі

рэдагаваць

Першым публічна даступным апісаньнем HTML быў дакумэнт, які называўся HTML Tags (Тэгі HTML), упершыню згаданы Бэрнэрзам-Лі ў інтэрнэце ў канцы 1991 году[2][3]. Яно апісвае 22 элемэнты, якія ўключаюць пачатковы, адносна просты дызайн HTML. Трынаццаць зь іх усё яшчэ існуюць у HTML вэрсіі 4.[4]

Бэрнэрз-Лі разглядаў HTML на той час як пашырэньне SGML, але HTML не была яшчэ фармальна вызначаная як мова, якая адпавядае SGML, але гэта адбылося ў сярэдзіне 1993 году, калі IETF апублікавала прапанову HTML-спэцыфікацыі: Бэрнэрз-Лі і Дэн Коналі, «Hypertext Markup Language (HTML)». Прапанова была апубліваваная ў якасьці інтэрнэт-чарнавіка, таму тэрмін яе актуальнасьці скончыўся праз паўгоду. У той жа час дэйв Рэджыт з канца 1993 году распрацоўвае інтэрнэт-чарнавік «HTML+ (Hypertext Markup Format)», дзе былі прапанаваная стандартызацыя ўжо існых магчымасьцяў, кшталту табліц і формаў для запаўненьня[5].

Пасьля таго, як чарнавікі HTML і HTML+ перасталі быць актуальнымі, IETF у пачатку 1994 году стварыла працоўную групу HTML, якая ў 1995 годзе скончыла працу над «HTML 2.0» — першай спэцыфікацыяй HTML, задуманай разгладацца як стандарт, і на падставе якой мусяць быць заснаваныя будучыя рэалізацыі. Апублікаваны ў 1996 годзе ў выгладзе RFC, HTML 2.0 уключаў у сябе ідэі HTML і HTML+. Вэрсіі «HTML 1.0» не існавала, «2.0» было дададзенае для разьмежаваньня новай вэрсіі і папярэдніх чарнавікоў.

З 1996 году спэцыфікацыі HTML сталі падтрымлівацца кансорцыюмам World Wide Web (W3C) з уплывам распрацоўнікаў камэрцыйнага праграмнага забесьпячэньня. Аднак у 2000 годзе HTML таксама стаў міжнародным стандартам (ISO/IEC 15445:2000). Апошняй спэцыфікацыя HTML, якая была апублікаваная W3C, зьяўляецца рэкамэндацыя HTML 4.01, апублікаваная ў канцы 1999 году. У 2001 годзе быў апубліваканы варыянт з выпраўленымі памылкамі і абдрукоўкамі.

Вэрсіі HTML

рэдагаваць

Ліпень 1993: Hypertext Markup Language[6] была апублікаваная IETF як працоўны чарнавік (пакуль яшчэ не стандарт).

Лістапад 1995: HTML 2.0[7] апублікаваная як IETF RFC:

Але ўсе былі прызнаныя састарэлымі з выхадам RFC 2854 у чэрвені 2000.

HTML 3.0 бала прапанаваная Дэйвам Рэджытам IETF і толькі што створанаму W3C у красавіку 1995. Стандарт утрымліваў вялікую колькасьць паляпшэньняў, якія былі яшчэ ў прапанове Рэджыта HTML+, кшталту падтрымкі табліц, магчымасьць абцяканьня выяваў тэкстам і выяўленьня складаных матэматычных элемэнтаў.[8] І хаця стандарт быў распрацаваны сумяшчальным з HTML 2.0, ён быў вельмі складаным, каб быць у адначасьсе рэалізаваным. Распрацоўнікі браўзэраў аддалі перавагу толькі частковай падтрымцы стандарту, але разам з тым рэалізавалі падтрымку іншых канструкцыяў разьметкі, якія яны хацелі б бачыць у стандарце.[9] Калі тэрмін актуальнасьці чарнавіка скончыўся ў верасьні 1995, праца ў гэтым кірунку была спыненая з-за адсутнасьці падтрымкі з боку браўзэраў. Стандарт HTML 3.1 тык і ня быў прадстаўлены афіцыйна, і наступная прапанова стандарту пасьля вэрсіі 3.0 была HTML 3.2 (кодавая назва «Wilbur»), якая пазбавілася большасьці новых магчымасьцяў, якія былі ўведзеныя ў HTML 3.0 і замест гэтага ўвабрала ў сябе вялікую колькасьць спэцыфічных тыпаў элемэнтаў і атрыбутаў браўзэраў, якія выкарыстоўваліся браўзэрамі Netscape і Mosaic.[10]

14 студзеня 1997 году: HTML 3.2[11] апублікаваны як рэкамэндацыя W3C.

HTML 3.2 не адпраўлялася ў IETF, чыя працоўная група HTML была зачыненая ў верасьні 1996 году. Замест гэтага ён быў апублікаваны ў выглядзе адной зь першых «рэкамэндацыяў» W3C у пачатку 1997 году. Падтрымка матэматычных выразаў, якая ўтрымлівалася ў HTML 3.0, у выніку была сфармаваная ў асобны стандарт MathML.

18 сьнежня 1997 году: HTML 4.0[12] апублікаваная як рэкамэндацыя W3C. Яна утрымлівала тры варыянты:

  • Strict (строгі), у якім састарэлыя элемэнты лічацца забароненымі,
  • Transitional (пераходны), у якім састарэлыя элемэнты дапушчальныя,
  • Frameset (набор кадраў), у якім пераважна дапушчальныя толькі элемэнты кадраў;

HTML 4.0 (першапачатковая кодавая назва «Cougar»)[10], які з аднаго боку ўтрымліваў вялікую колькасьць спэцыфічных элемэнтаў і атрыбутаў пэўных браўзэраў, у той жа час пачаў спробы зрабіць стандарт больш празрыстым шляхам ператварэньня пэўных зь іх у састарэлыя і рэкамэндуючы не выкарыстоўваць гэтыя тыпы і элемэнты. Нязначныя рэдактарскія праўкі спэцыфікацыі HTML 4.0 былі апублікаваныя ў 1998 годзе без павелічэньня нумара вэрсіі і дадатковыя нязначныя праўкі, апублікаваныя як HTML 4.01.

24 красавіка 1998 году: HTML 4.0[13] была перавыдадзеная зь нязначнымі выпраўленьнямі без павелічэньня нумара вэрсіі.

24 сьнежня 1999 году: HTML 4.01[14] апублікаваная як рэкамэндацыя W3C. Яна прапануе тыя ж тры варыянты, як і HTML 4.0, а апошнія выпраўленьні ейных недакладнасьцяў былі апублікаваныя 12 траўня 2001 году.

HTML 4.01 і ISO/IEC 15445:2000 зьяўляюцца самай апошняй і канчатковай вэрсіяй HTML.

15 траўня 2000 году: ISO/IEC 15445:2000[15]ISO HTML», заснаваная на HTML 4.01 Strict) апублікаваны як міжнародны стандарт ISO/IEC.

22 студзеня 2008 году: HTML 5[16] апублікаваны W3C як працоўны чарнавік.

Вэрсіі XHTML

рэдагаваць

XHTML — асобная мова, якая пачыналася зь перафармуляваньня HTML 4.01 выкарыстоўваючы XML 1.0. Яна працягвае разьвівацца:

  • XHTML 1.0 апублікаваная 26 студзеня 2000 году як рэкамэндацыя W3C, пазьней перагледжаная і перавыдадзеная 1 жніўня 2002 году. Яна прапаноўвае тыя ж тры варыянты як HTML 4.0 і 4.01, сфармуляваныя на мове XML зь нязначнымі абмежаваньнямі.
  • XHTML 1.1 апублікаваная 31 траўня 2001 году як рэкамэндацыя W3C. Яна заснаваная на XHTML 1.0 Strict, але ўтрымлівае нязначныя зьмены, можа быць пашыранай, і была сфармуляваная з выкарыстаньнем модуляў з мадулярызацыі XHTML, якая была апублікаваная 10 красавіка 2001 году як рэкамэндацыя W3C.
  • XHTML 2.0 усё яшчэ працоўны чарнавік W3C. XHTML 2.0 несумяшчальная з XHTML 1.x і таму будзе больш правільна называць яе новай мовай, заснаванай на XHTML, чым абнаўленьнем XHTML 1.x.
  • XHTML 5, якая зьяўляецца абнаўленьнем XHTML 1.x, вызначаецца як паралельная з HTML 5 мова ў чарнавіку HTML 5[17].

Разьметка HTML

рэдагаваць

Разьметка HTML складаецца зь некалькіх ключавых кампанэнтаў, уключаючы элемэнты (і іхныя атрыбуты), сымбальныя тыпы дадзеных, і спасылкі на сымбалі з спасылкамі на сутнасьці. Яшчэ адзін важны кампанэнт — гэта пазначэньне тыпу дакумэнта.

Элемэнты

рэдагаваць

Элемэнты зьяўляюцца асноўнай структурай HTML-разьметкі. Элемэнты маюць дзьве асноўныя ўласьцівасьці: атрыбуты і зьмесьціва. Кожны атрыбут і кожнае зьмесьціва элемэнта маюць пэўныя абмежаваньні, якіх варта прытрымлівацца, каб HTML-дакумэнт лічыўся правільна сфармаваным. Элемэнт звычайна мае пачатковы тэг (напрыклад <назва-элемэнта>) і канчатковы тэг (напрыклад, </назва-элемэнта>). Атрыбуты элемэнта зьмяшчаюцца ў пачатковым тэгу, а зьмесьціва знаходзіцца паміж пачатковым і канчатковым тэгамі (напрыклад, <назва-элемэнта атрыбут="значэньне">Зьмесьціва</назва-элемэнта>). Пэўныя элемэнты, кшталту <br>, ня ўтрымліваюць ніякага зьмесьціва і ня могуць мець канчатковага тэга.

Атрыбуты

рэдагаваць

Большасьць атрыбутаў элемэнта — гэта пары назва-значэньне, падзеленыя знакам «=», і запісаныя ў пачатковым тэгу пасьля назвы элемэнта. Значэньне можа быць узятае ў двукосьсі, хаця значэньні, якія складаюцца з пэўных сымбаляў могуць быць пакінутыя без двукосьсяў у HTML (але не ў XHTML).[18][19] Пакідаць значэньні атрыбутаў без двукосьсяў лічыцца небясьпечным.[20] У процівагу парным атрыбутам назва-значэньне існуюць атрыбуты, якія ўплываюць на элемэнт проста сваёй наяўнасьцю ў пачатковым тэгу элемэнта[2] (кшталту атрыбуту ismap для элемэнта img[21]).

Пазначэньне тыпу дакумэнта

рэдагаваць

Для таго, каб уключыць праверку прыладамі SGML, заснаваную на вызначэньні тыпу дакумэнта, з мэтай пазьбегнуць рознай інтэрпрэтыцыі браўзэрамі, HTML-дакумэнты могуць пачынацца з пазначэньня тыпу дакумэнта (Document Type Declaration — DTD). Пазначэньне тыпу дакумэнта ўтрымлівае машынную граматыку, якая вызначае дазволенае і забароненае зьмесьціва для дакумэнта, які заяўляе, што адпавядае пэўнаму тыпу. Аднак, браўзэры не абавязкова чытаюць DTD. Найбольш распаўсюджаныя графічныя браўзэры выкарыстоўваюць пазначэньне тыпу дакумэнта (альбо яго адсутнасьць) і іншыя зьвесткі ў пачатку выточнага коду для вызначэньня, які рэжым адлюстраваньня выкарыстоўваць.

Напрыклад:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Гэтае пазначэньне спасылаецца на тып дакумэнта HTML 4.01, які, напрыклад, ня ўтрымлівае элемэнтаў кшталту <font>, пакідаючы ўсё фарматаваньне каскадным табліцам стыляў і тэгам span і div.

Актуальныя варыянты HTML

рэдагаваць

Ад моманту свайго зьяўленьня HTML і паралельныя стандарты адносна хутка атрымалі падтрымку. Аднак, мова ня мела яснага стандарту ў першыя гады свайго разьвіцьця. Хаця ейныя стваральнікі першапачаткова прасоўвалі HTML як сэмантычную мову, вольнай ад дэталяў рэалізацыі, практычнае выкарыстаньне ўвяло ў мову вялікую колькасьць элемэнтаў і атрыбутаў, якія падтрымліваліся пераважна разнастайнымі стваральнікамі браўзэраў. Апошнія стандарты HTML рэалізуюць спробы перайсьці часам хаатычную распрацоўку мовы і стварыць глебу для пабудовы адначасова сэнсавых і добра складзеных дакумэнтаў. Каб вярнуць HTML ейную ролю сэмантычнай мовы, W3C распрацавала мовы стыляў, такія як CSS і XSL, каб перакласьці на іх праблемы выяўленьня. У выніку, спэцыфікацыя HTML паступова устрымліваецца і пазбаўляецца ад існых элемэнтаў выяўленьня.

Крыніцы і заўвагі

рэдагаваць
  1. ^ Tim Berners-Lee (сакавік 1989, May 1990) Information Management: A Proposal. CERN.
  2. ^ а б HTML Tags. World Wide Web Consortium.
  3. ^ сьпіс рассылкі www-talk, World Wide Web Consortium — Першыя згадкі пра тэгі HTML.
  4. ^ Сьпіс элемэнтаў у HTML 4, World Wide Web Consortium
  5. ^ HTML+ Internet-Draft — Abstract — Цытата: «Стваральнікі браўзэраў экспэрымэнтуюць з пашырэньнямі HTML і зараз зручны момант аб’яднаць гэтыя ідэі разам у перагледжаны дакумэнт фармату. Новы фармат спраектаваны такім чынам, каб дазволіць паступовае разьвіцьцё HTML з дадаваньнем новых магчымасьцяў, кшталту табліц, малюнкаў у загалоўках і форм для запаўненьня для адпраўкі запытаў да аддаленых базаў дадзеных і паштровых апытанак».
  6. ^ http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt
  7. ^ http://tools.ietf.org/html/rfc1866
  8. ^ Спэцыфікацыя HTML вэрсіі 3.0
  9. ^ Пашырэньні HTML 3.0, Netscape. Netscape актыўна падтрымлівае HTML 3.0. Але мы пайшлі далей і рэалізавалі некалькі больш значных прапаноў з чаканьнем таго, што яны будуць прынятыя. …У дадатак, мы таксама дадалі некалькі новых структур функцыяальнасьці HTML у Netscape Navigator, якіх пакуль няма ў спэцыфікацыі HTML 3.0. Мы лічым, што яны належаць ёй, і як частка працэсу стандартызацыі мы прапануем уключыць іх у стандарт.
  10. ^ а б Арнод Эргельфрыт, Уводзіны ў Wilbur, Група вэб-дызайну
  11. ^ http://www.w3.org/TR/REC-html32
  12. ^ http://www.w3.org/TR/REC-html40-971218/
  13. ^ http://www.w3.org/TR/1998/REC-html40-19980424/
  14. ^ http://www.w3.org/TR/html401
  15. ^ https://www.cs.tcd.ie/15445/15445.HTML
  16. ^ http://www.w3.org/TR/html5/
  17. ^ http://www.w3.org/html/wg/html5/
  18. ^ http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.2
  19. ^ http://www.w3.org/TR/xhtml1/diffs.html#h-4.4
  20. ^ https://web.archive.org/web/20081121032139/http://www.cs.tut.fi/~jkorpela/qattr.html
  21. ^ http://www.w3.org/TR/1999/REC-html401-19991224/struct/objects.html#adef-ismap

Вонкавыя спасылкі

рэдагаваць

  HTMLсховішча мультымэдыйных матэрыялаў