HTML
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 1866,
- дапоўненая з дапамогай RFC 1867 (загрузка файлаў з формаў) у тым жа месяцы,
- RFC 1942 (табліцы) у траўні 1996,
- RFC 1980 (кліенцкія мапы малюнкаў) у жніўні 1996,
- RFC 2070 (інтэрнацыяналізацыя) у студзені 1997;
Але ўсе былі прызнаныя састарэлымі з выхадам 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 паступова устрымліваецца і пазбаўляецца ад існых элемэнтаў выяўленьня.
Крыніцы і заўвагі
рэдагаваць- ^ Tim Berners-Lee (сакавік 1989, May 1990) Information Management: A Proposal. CERN.
- ^ сьпіс рассылкі www-talk, World Wide Web Consortium — Першыя згадкі пра тэгі HTML.
- ^ Сьпіс элемэнтаў у HTML 4, World Wide Web Consortium
- ^ HTML+ Internet-Draft — Abstract — Цытата: «Стваральнікі браўзэраў экспэрымэнтуюць з пашырэньнямі HTML і зараз зручны момант аб’яднаць гэтыя ідэі разам у перагледжаны дакумэнт фармату. Новы фармат спраектаваны такім чынам, каб дазволіць паступовае разьвіцьцё HTML з дадаваньнем новых магчымасьцяў, кшталту табліц, малюнкаў у загалоўках і форм для запаўненьня для адпраўкі запытаў да аддаленых базаў дадзеных і паштровых апытанак».
- ^ http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt
- ^ http://tools.ietf.org/html/rfc1866
- ^ Спэцыфікацыя HTML вэрсіі 3.0
- ^ Пашырэньні HTML 3.0, Netscape. Netscape актыўна падтрымлівае HTML 3.0. Але мы пайшлі далей і рэалізавалі некалькі больш значных прапаноў з чаканьнем таго, што яны будуць прынятыя. …У дадатак, мы таксама дадалі некалькі новых структур функцыяальнасьці HTML у Netscape Navigator, якіх пакуль няма ў спэцыфікацыі HTML 3.0. Мы лічым, што яны належаць ёй, і як частка працэсу стандартызацыі мы прапануем уключыць іх у стандарт.
- ^ а б Арнод Эргельфрыт, Уводзіны ў Wilbur, Група вэб-дызайну
- ^ http://www.w3.org/TR/REC-html32
- ^ http://www.w3.org/TR/REC-html40-971218/
- ^ http://www.w3.org/TR/1998/REC-html40-19980424/
- ^ http://www.w3.org/TR/html401
- ^ https://www.cs.tcd.ie/15445/15445.HTML
- ^ http://www.w3.org/TR/html5/
- ^ http://www.w3.org/html/wg/html5/
- ^ http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.2
- ^ http://www.w3.org/TR/xhtml1/diffs.html#h-4.4
- ^ https://web.archive.org/web/20081121032139/http://www.cs.tut.fi/~jkorpela/qattr.html
- ^ http://www.w3.org/TR/1999/REC-html401-19991224/struct/objects.html#adef-ismap
Вонкавыя спасылкі
рэдагавацьHTML — сховішча мультымэдыйных матэрыялаў