HTML

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
HTML (HyperText Markup Language)
HTML.svg
Розширення файлу: .html, .htm
MIME тип: text/html
Type code: TEXT
Uniform Type Identifier: public.html
Розробник: World Wide Web Consortium
Тип формату: Мова розмітки даних
Розширений з: SGML
Розширений до: XHTML
Стандарт(и): W3C HTML 4.01
HTML

HTML (англ. HyperText Markup Language — Мова розмітки гіпертекстових документів) —стандартна мова розмітки веб-сторінок в Інтернеті. Більшість веб-сторінок створюються за допомогою мови HTML (або XHTML). Документ HTML оброблюється браузером та відтворюється на екрані у звичному для людини вигляді.

HTML є похідною мовою від SGML, успадкувавши від неї визначення типу документу та ідеологію структурної розмітки тексту.

HTML разом із каскадними таблицями стилів та вбудованими скриптами — це три основні технології побудови веб-сторінок.[1]

HTML впроваджує засоби для:[1]

  • створення структурованого документу шляхом позначення структурного складу тексту: заголовки, абзаци, списки, таблиці, цитати та інше;
  • отримання інформації із Всесвітньої мережі через гіперпосилання;
  • створення інтерактивних форм;
  • включення зображень, звуку, відео, та інших об'єктів до тексту.

Історія розвитку HTML[ред.ред. код]

1980 року фізик Тім Бернерс-Лі, який на той час був співробітником CERN, запропонував і прототипував систему ENQUIRE, яка мала полегшити сумісне користування документами для дослідників CERN.

1989 року Бернерс-Лі запропонував впровадити на базі Internet гіпертекстову систему документів.[2]

Вже наприкінці 1990 року він розробив HTML і написав браузер та серверне програмне забезпечення для запропонованої системи. У цьому ж році Тім Бернерс-Лі та Роберт Кайо, інженер інформаційних систем CERN, подали спільну заявку на фінансування проекту, проте цей проект не був офіційно прийнятий CERN.

Наприкінці 1991 року Тім Бернерс-Лі опублікував в Інтернеті перший загальнодоступний опис мови розмітки HTML, відомий як документ «HTML теги» (HTML Tags).[3] В ньому були описані 20 елементів первісної, відносно простої схеми розмітки HTML. За винятком тегу гіперпосилання, який був жорстко підпорядкований внутрішньому SGML-формату документації CERN. Тринадцять із тих елементів ще й досі існують у HTML4.[4]

Бернерс-Лі розглядав HTML як похідну мову від SGML, і в середині 1993 року Спеціальна Комісія Інтернет-розробок (IETF) офіційно визначила її такою, опублікувавши першу специфікацію HTML: «Hypertext Markup Language (HTML)» Internet-проект, авторами якої були Тім Бернерс-Лі та Ден Конолі. Ця специфікація вже містила визначення типу документу, яке чітко зазначало граматику HTML. [5]

Проект втратив силу через 6 місяців, проте був відомий за офіційне визнання в ньому, створеного для браузера NCSA Mosaic, тега додавання зображень, не розділяючи філософію IETF щодо заснування стандартів на успішних прототипах.[6] Так само пізніше в 1993 році в конкуруючому Інтернет-проекті Дейва Раджетта «HTML+ (Hypertext Markup Format)», було запропоновано стандартизувати вже запроваджені браузерами сенсаційні на той час можливості, такі як таблиці та перші інтерактивні форми.

На початку 1994 року, після того, як проекти «HTML» і «HTML+» втратили свою силу, IETF створив Робочу групу HTML (HTML Working Group). 1995 року Робоча група HTML завершила роботу над документом «HTML 2.0» (опублікований як RFC із номером 1866), першою специфікацією, що мала бути використана як базовий стандарт для подальших вдосконалень HTML.[6] Версія 2.0 окреслювала чіткі відмінності між новим виданням специфікації та попередніми проектами.

Подальші розробки під заступництвом IETF зіштовхнулися з конкуруючими інтересами. З 1996 року специфікації HTML затверджувались Консорціумом W3C, враховуючи доповнення до розмітки, що впроваджувалися компаніями-розробниками браузерів. Тим не менш, у 2000 році HTML стала міжнародним стандартом (ISO/IEC 15445:2000).

Остання специфікація HTML, опублікована W3C наприкінці 1999 року, має назву «HTML 4.01 Recommendation». Усі спірні питання та помилки цієї специфікації були офіційно визнані у списку друкарських помилок, опублікованому в 2001 році.

Версії[ред.ред. код]

Тім Бернерс-Лі представив HTML в дослідницькому центрі CERN в Женеві 1989 року.[7]

  • HTML (без номера версії, 3 листопада 1992): найперша версія, орієнтована лише на текст.[8]
  • HTML (без номера версії, 30 квітня 1993): до тексту додано атрибути, які визначають курсивне або жирне написання літер, та зображення.
  • HTML+ (листопад 1993): заплановані доповнення, які потрапили до наступних версій, але ніколи не були відокремлені як HTML+.[9]
  • HTML 2.0 (листопад 1995): визначена стандартом RFC 1866 версія з підтримкою форм. Статус цього стандарту вже «історичний», також визнані застарілими попередні версії.
  • HTML 3.0: версія, яка не зазнала поширення, оскільки разом із випуском браузера Netscape Navigator версії 3, цей стандарт вже був застарілим.
  • HTML 3.2 (14 січня 1997): були додані численні можливості, такі як таблиці, обтікання текстом зображень, інтеграція аплетів.
  • HTML 4.0 (18 грудня 1997): були додані таблиці стилів, скрипти та фрейми. Також, відбулось розділення на Strict (суворе дотримання стандартів), Frameset (з підтримкою фреймів), Transitional (перехідний). 24 квітня 1998 було випущено виправлену версію цього стандарту.
  • HTML 4.01 (24 грудня 1999): Заміна версії HTML 4.0, містить численні дрібні виправлення.
  • HTML 5 (Working Draft, 5 квітня 2008):[10] HTML 5 має новий словник побудований на основі HTML 4.01 та XHTML 1.0. Також перероблена і розширена пов'язана з HTML специфікація DOM
  • XHTML 1.0 (26 січня 2000): Висловлення стандарту HTML 4.01 засобами XML. 1 серпня 2002 було випущено оновлену редакцію стандарту.
  • XHTML 1.1 (31 травня 2001): Після того, як XHTML буде розділено на модулі, стандарт XHTML 1.1 визначатиме сувору версію, в якій не буде запроваджених HTML 4 можливостей Frameset та Transitional.
  • XHTML 2.0 (в розробці): ця версія вже не базується на HTML 4.01 і додає деякі нові теги. Буде завершено розділення між представленням та вмістом.

Документ HTML[ред.ред. код]

Для поліпшення взаємодії, SGML вимагає аби кожна похідна мова (HTML у тому числі) визначала свою кодову таблицю для кожного документа, яка складається з репертуара (перелік різноманітних символів) та позиції символа (перелік цифрових посилань на символи з репертуара). Кожен документ HTML — це послідовність символів з репертуара.

HTML використовує найповнішу кодову таблицю UCS (англ. Universal Character Set — Універсальний Набір Символів).

Проте, однієї кодової таблиці недостатньо для того, щоб браузери могли правильно відтворювати документи HTML. Для цього браузерам потрібно «знати» специфічну кодову таблицю документа, яку автор має зазначати завжди в елементі meta із параметром charset. За замовчуванням використовується кодова таблиця ISO-8859-1, відома також як Latin-1.

Розмітка[ред.ред. код]

Розмітка в HTML складається з чотирьох основних компонентів: елементів (та їхніх атрибутів), базових типів даних, символьних мнемонік та декларації типу документа.

Загальна структура[ред.ред. код]

Документ HTML 4.01 складається з трьох частин:

  1. Декларація типу документу (англ. Document type declaration, Doctype), на початку документа, в якій визначається тип документа (DTD).
  2. Шапка документу (знаходиться в межах елементу head), в якій записано загальні технічні відомості або додаткова інформація про документ, яка не відтворюється безпосередньо в браузері;
  3. Тіло документу (може знаходитися в елементах body або frameset), в якому міститься основна інформація документа.

Нижче наведено приклад загальної структури HTML-документу:

<!doctype HTML public "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<html>
   <head>
      <title>Мій перший HTML-документ</title>
   </head>
   <body>
      Hello world!
   </body>
</html>

Елементи[ред.ред. код]

Докладніше: Елементи HTML

Елементи являють собою базові компоненти розмітки HTML. Кожен елемент має дві основні властивості: атрибути та зміст (контент). Існують певні настанови щодо кожного атрибута та контента елемента, які треба виконувати задля того, щоб HTML-документ був визнаний валідним.

У елемента є початковий тег, який має вигляд <element-name>, та кінцевий тег, який має вигляд </element-name>. Атрибути елемента записуються в початковому тегу одразу після назви елемента, контент елемента записується між його двома тегами. Наприклад: <element-name element-attribute="attribute-value">контент елемента</element-name>.

Деякі елементи, наприклад br, не містять контенту, тож і не мають кінцевого тега. Елемент може не мати початкового та кінцевого тега (наприклад, елемент head), проте він завжди буде представлений в документі.[4] Нижче зазначені деякі типи елементів розмітки HTML.

Елементи структурної розмітки застосовуються задля опису семантики тексту, іншими словами ці елементи описують призначення тексту свого контенту. Вони не зазначають ніякого спеціального (візуального) відтворення тексту, проте більшість браузерів мають стандартні стилі форматування для кожного елемента. Для подальшого стилізування тексту рекомендується використовувати Каскадні таблиці стилів (CSS). Наприклад:

Фрагмент HTML-розмітки документа Відтворення в браузері
<h1>Давньогрецькі боги</h1>
<p>
<strong>Посейдон</strong> — володар світових вод,
Океану, в латинян йому відповідав <em>Нептун</em>, у 
слов'ян — <em>Цар Моря, Цар Морський, Водяник</em>.
</p>

Uk html sem elem ex.PNG

Елементи візуальної розмітки застосовуються задля опису візуальних ефектів тексту, не зазначаючи при цьому функції тексту свого контенту. Остання чинна специфікація HTML 4.01 визначає більшість з цих елементів такими, що не рекомендується застосовувати у розмітці. Наприклад:

Фрагмент HTML-розмітки документа Відтворення в браузері
<font size="5">Давньогрецькі боги</font>
<br />
<b>Посейдон</b> — володар світових вод, Океану, 
в латинян йому відповідав <i>Нептун</i>, у слов'ян — 
<i>Цар Моря, Цар Морський, Водяник</i>.
Uk html pres elem ex.PNG

Елементи розмітки гіпертексту застосовуються задля з'єднання частин документу з іншими документами. Наприклад:

Фрагмент HTML-розмітки документа Відтворення в браузері
<a href="http://uk.wikipedia.org/wiki/">Вікіпедія</a>
Вікіпедія
Атрибути[ред.ред. код]
Докладніше: Атрибути HTML

Більшість з атрибутів елементу являє собою пару «назва-значення», розділених між собою знаком рівняння, та записаних у початковому тегу одразу після назви елемента. Значення атрибуту може бути окреслено лапками (подвійними або одиничними), також, якщо значення атрибуту складається з певних символів, його можна не виділяти лапками зліва. Проте, не виділення значення атрибутів в лапки вважається небезпечним кодом. На відміну від атрибутів виду «назва-значення», є певні атрибути, що впливають на елемент, назва яких лише з'явилась в початковому тегу (наприклад, атрибут ismap елементу img).

Більшість елементів можуть мати будь-який з загальних атрибутів:

Атрибут id впроваджує унікальний ідентифікатор елементу по всьому документу. Доданий до URL документу, він впроваджує глобальний унікальний ідентифікатор елементу.

Це може використовуватися:

Атрибут title використовується для додавання пояснювального тексту для елементу. В більшості браузерів значення цього атрибуту можна побачити як виникаючу підказку, при наведені курсора на елемент.

Атрибут class впроваджує засіб об'єднання схожих елементів у класи.

Це може використовуватися для:

  • відтворення візуальних ефектів. Для презентаційної розмітки, наприклад, документ може містити class="notation", який визначає всі елементи, у яких клас визначений як "notation", підпорядкованими головному тексту документу. Такі елементи можна зібрати докупи і показати як виноски внизу сторінки, замість того, щоб показувати їх на тому місці, де вони з'являються в самому HTML коді документу;
  • структурного поділу тексту. Для семантичної розмітки, наприклад, класи використовуються у створенні мікроформатів.

Базові типи даних[ред.ред. код]

Докладніше: Типи даних HTML

Оскільки HTML є похідною мовою від SGML, усі типи даних HTML ґрунтуються на базових типах даних SGML (наприклад, PCDATA, CDATA, NAME, ID, NUMBER).

Кожен елемент має дві властивості — атрибути і вміст, які мають певні значення. Всі можливі значення цих двох властивостей прописуються відповідно до визначених у DTD типів даних. Нижче наведено кілька типів даних HTML:

  • % Color — колір sRGB, записаний у шістнадцятковому вигляді, або одне з шістнадцяти службових слів;
  • % ContentType — тип умісту/носія;
  • % Charset — таблиця кодування символів;
  • % Character — мнемоніка або окремий символ із UCS;
  • % Length — nn розмір в пікселях, nn% — у відсотках;
  • % URI — Універсальний ідентифікатор ресурсу;
  • % Datetime — дата та час;
  • % Script — скрипт;
  • % StyleSheet — дані таблиць стилів;
  • % Text — текстові рядки.

Мнемоніки[ред.ред. код]

Існують такі випадки, коли в документі потрібно використати якийсь символ, якого немає в обраній для документу кодовій таблиці. Для таких випадків можливо замінити символ на еквівалентне йому SGML-посилання на символ (мнемоніку).

Розрізняють мнемоніки двох видів:

  • Цифрові мнемоніки (десяткові або 16-кові)

Визначають кодову позицію символу із таблиці кодів UCS. Наприклад:

Мнемоніка Символ
&aring;
å
&#229;
å
&#Xe5;
å


  • Мнемоніки із певних сполучень символів

Такі мнемоніки використовують псевдоніми замість кодів символів. Проте в HTML не визначені псевдоніми для кожного символа із UCS. Наприклад:

Мнемоніка Символ
&lt;
<
&amp;
&
&quot;
"


HTML 4.01 підтримує три різні набори мнемонік:

  • Мнемоніки для символів ISO 8859-1 (Latin-1)
  • Символи, математичні символи та грецькі літери
  • Мнемоніки для символів розмітки та інтернаціоналізації

Декларація типу документа[ред.ред. код]

Коректний документ HTML оголошує версію HTML, яка використовується в цьому документі. Декларація типу документу зазначає один із трьох DTD, що різняться між собою тим, які елементи HTML вони підтримують:

  • HTML 4.01 Strict (Суворе DTD) підтримує всі елементи та атрибути, які не є такими, що не рекомендується застосовувати, або не входять до документу типу «Набір фреймів»(Frameset).
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
              "http://www.w3.org/TR/html4/strict.dtd">
  • HTML 4.01 Transitional (Перехідне DTD) підтримує все із суворого DTD плюс елементи та атрибути, що не рекомендується застосовувати (більшість із них складають візуальну розмітку)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
              "http://www.w3.org/TR/html4/loose.dtd">
  • HTML 4.01 Frameset (Набір Фреймів DTD) підтримує все із перехідного DTD плюс самі фрейми.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
              "http://www.w3.org/TR/html4/frameset.dtd">

URI в кожній з цих Декларацій типу документа дозволяє браузерам завантажити необхідні DTD-набори мнемонік. Останні дві літери в Декларації вказують на мову DTD. Для HTML це завжди англійська («EN»).

Декларація типу документу потрібна для проведення валідації документу згідно з оголошеним DTD. Кожне DTD містить в собі повну граматику HTML, яка зазначає дозволені та не дозволені елементи для документу цього типу.

Валідація[ред.ред. код]

Так само як і кожна мова, будь-яка комп'ютерна мова має свою власну граматику, словник і синтаксис. І кожен документ, написаний цією мовою, має дотримуватися цих правил. HTML використовує машинно-зчитуючу граматику, яка називається DTD, механізм, успадкований від SGML.

Проте, так само як і тексти природної мови можуть містити граматичні помилки, документи, що використовують мови розмітки можуть не дотримуватись визначеної граматики. Процес перевірки документа на дотримання визначених мовою правил називають валідацією, а інструмент, який здійснює перевірку  — валідатором. Документ, що пройшов цей процес без помилок називають валідним.

Згідно з цією концепцією, «валідація HTML розмітки» визначається як процес перевірки веб-документа за правилами граматики (визначеними в DTD), на які він посилається із елементу doctype.

Один із важливих принципів програмування: «Будьте консервативні в тому, що ви робите; будьте ліберальним в тому, що ви приймаєте».[11]

Браузери дотримуються другої частини цього принципу: вони приймають веб-документи такими, які вони є, та намагаються відтворити їх на екрані, навіть якщо вони не використовують стандартний HTML. Зазвичай це означає, що браузер спробує «здогадатися» про те, що автор документу мав на увазі. Проблема полягає в тому, що різні браузери (або навіть різні версії одного браузера) зроблять різні припущення щодо одних і тих же не стандартних конструкцій, і навіть гірше: якщо HTML-код дуже відрізняється від стандарту, браузер безнадійно заплутається і безладно відтворить сторінку на екрані, або навіть аварійно закриється.

Саме тому, дотримуватися першої частини принципу належить авторам документа, шляхом перевірки своїх документів на дотримання стандарту. Найкращий інструмент для цього — валідатор HTML розмітки.

Перегляд[ред.ред. код]

Для перегляду HTML-розмітки документа можна використовувати будь-який текстовий редактор. Для перегляду документу, відтвореного за правилами HTML-розмітки, використовується браузер.

Транспортування в мережі[ред.ред. код]

HTML документи можуть бути транспортовані так само як і будь-які інші файли (наприклад, за допомогою протоколів FTP, TCP), проте, зазвичай вони транспортуються із сервера за допомогою протоколу HTTP, або по електронній пошті.

HTTP[ред.ред. код]

Всесвітня павутина складається в основному з HTML документів, переданих з веб-серверів для браузерів, використовуючи протокол HTTP. До того ж, HTTP використовується для передачі зображень, звуків, відео та іншого супутнього контенту. Для правильного відтворення документу браузером, окрім нього самого передається ще й інша інформація (метадані), у якій зазвичай міститься визначення MIME типу (наприклад, text/html або application/xhtml+xml) та кодової таблиці документа.

Електронна пошта[ред.ред. код]

Більшість графічних поштових клієнтів дозволяють використовувати підмножину елементів HTML (часто визначених стандартом як застарілі та не рекомендовані у розмітці), щоб забезпечити візуальне форматування тексту, роблячи неможливим семантичну розмітку тексту засобами поштового клієнта. Багато таких клієнтів включають в себе WYSIWYG-редактор HTML для складання повідомлень. Використання HTML у повідомленнях електронної пошти є спірним питанням через проблеми з сумісністю у різних поштових клієнтів; також HTML може допомогти приховати фішинг.

Поточні напрямки розвитку і використання HTML[ред.ред. код]

З моменту свого створення, HTML і пов'язані з нею протоколи порівняно швидко отримали визнання. Однак, в перші роки існування цієї мови розмітки не було жодних чітких стандартів. Хоча її творці спочатку і задумували HTML як семантичну мову, позбавлену презентаційних можливостей[12], її практичне використання із різними браузерами призвело до додавання багатьох презентаційних елементів і атрибутів в HTML. Останні стандарти пов'язані з HTML відображають зусилля з подолання хаотичного розвитку мови і створення раціональної основи для розробки як змістовних, так і виразних документів.[13] Щоб повернути HTML її роль семантичної мови, Консорціум Всесвітньої павутини розробив мови стилізування такі як Каскадні таблиці стилів та Розширена мова таблиць стилів, аби перенести на них відповідальність за вигляд документу. У зв'язку з цим, специфікація HTML повільно почала повертатися виключно до семантичних елементів.

Семантичний HTML[ред.ред. код]

Докладніше: Семантичний HTML

Семантичний HTML — спосіб написання HTML, що віддає перевагу підкресленню смислу закодованої інформації радше за її подання (зовнішній вигляд). Ще з самого початку свого розвитку HTML мав у складі елементи семантичної розмітки[14], проте також мав і елементи презентаційної розмітки такі як font, i та center. Також HTML має семантично-нейтральні елементи span та div. З кінця 1990-х, коли Каскадні таблиці стилів почали належно працювати в більшості браузерів, авторам документів було рекомендовано уникати використання презентаційної розмітки HTML з метою розділення представлення і змісту.[15]

У 2001 році, в статті про Семантичну павутину, Тім Бернерс-Лі та інші навели приклади шляхів, за якими, одного дня, «агенти» інтелектуального програмного забезпечення зможуть автоматично прочесати Всесвітню мережу та відшукати, відфільтрувати та встановити співвідношення попередньо непов'язаних фактів на благо користувачів.[16] Такі агенти є незвичайними навіть зараз, але деякі з ідей Web 2.0, мешапів та сервісів порівняння цін стають все ближчими до реалізації. Основна відмінність між цими гібридними веб-застосунками та семантичним агентом, який згадується у статті Бернерса-Лі, полягає в тому, що нинішні шляхи збирання та гібридизації інформації, як правило, створені веб-розробниками, які вже точно знають де шукати потрібну інформацію і яка в неї API-семантика.

Важливими типом веб-агента, який прочісує і читає веб-сторінки автоматично, проте без знання того, що він може виявити, є пошуковий робот. Цей програмний агент, залежить від семантичної ясності веб-сторінок, які він знаходить, оскільки в ньому використовуються різні методи і алгоритми зчитування та індексації мільйонів веб-сторінок в день, що забезпечує користувачів Інтернету пошуковими можливостями, без яких Всесвітня павутина була б корисна тільки на малу частину від її сучасних можливостей.

Для того щоб пошукові роботи мали можливість оцінити значення фрагментів тексту, які вони знаходять в документах HTML, а також для тих, хто створює мешапи та інші гібридні агенти, так само як і для більш автоматизованих агентів, необхідно аби семантичні структури, які існують в HTML набули широкого і рівномірного застосовування, щоб виділити зміст опублікованого тексту.[17]

Елементи презентаційної розмітки є забороненими в останніх чинних специфікаціях HTML і XHTML, а також і в проекті HTML 5.

Добрий семантичний HTML також покращує доступність веб-документів. Наприклад, коли браузер або аудіо-браузер може правильно встановити структуру документа, він не буде витрачати час користувачів з вадами зору, на прочитання повторюваної або неактуальної інформації, якщо вона була розмічена правильно.

Проект специфікації HTML 5[ред.ред. код]

Докладніше: HTML 5

HTML 5 — це наступна значна переробка стандарту HTML. Робота над створенням специфікації, відома під назвою «Web Applications 1.0», розпочата WHATWG в червні 2004 року.[18]

HTML 5 спрямований на скорочення використання заснованих на плагінах, RIA-технологій, таких як Adobe Flash, Microsoft Silverlight і Sun JavaFX, хоча досягнення цієї мети займе багато років.[19]

Специфікація HTML 5 зводиться до надання семантичного рівня мови розмітки і пов'язаних з ними семантичних рівнів API для сценаріїв задля авторизації доступних сторінок в Всесвітній павутині, починаючи від статичних документів і закінчуючи динамічними застосунками.[20] HTML 5 вводить ряд нових елементів і атрибутів, які відображають типову архітектуру сучасних веб-сторінок. Деякі з них є семантичними замінами загально-використовуваних блочних (div) і вбудованих (span) елементів, наприклад елемент nav (навігаційного блок сторінки) і footer. Інші елементи, забезпечують нові функціональні можливості через стандартизований інтерфейс, наприклад елементи audio і video.

Наразі специфікація має статус: «у розробці», та, як очікується, матиме його ще протягом трьох років, хоча розробка частин HTML 5 буде завершена і реалізована в браузерах ще до того, як специфікація отримає остаточний статус Рекомендації W3C.[21]

XHTML[ред.ред. код]

Докладніше: XHTML

HTML, ймовірно, найуспішніша мова розмітки документів у всьому світі. Проте, коли світові представили XML, було вирішено створити нову версію HTML, похідну від XML. Адже з XML-заснованим HTML інші XML-мови могли би включати частини XHTML, а XHTML-документи могли б включати частини інших мов розмітки. Також автори веб-документів могли б скористатися перевагами редизайну задля очищення деяких з найбільш неохайних частини HTML, а також додати деякі з нових необхідних функцій, таких як покращені форми.[22] Нижче зазначені деякі переваги використання XHTML замість HTML.

Якщо документ є лише чистим XHTML 1.0 (не включає інші мови розмітки), то різниця між XHTML та HTML майже не помітна. Проте, оскільки стають доступними все більше і більше XML-інструментів (наприклад, XSLT для перетворення документів), переваги використання XHTML стають все помітнішими. Наприклад, XForms дозволяє досить просто керувати редагуванням документів XHTML (або будь-яких інших видів документа XML). Семантичні веб-застосунки також зможуть скористатися документами XHTML за своїми потребами.[23] Якщо документ більш ніж просто XHTML 1.0 (наприклад, у документі використовуються мови розмітки MathML, SMIL, або SVG), тоді переваги використання XHTML значно помітніші, адже HTML не підтримує такі комбінації мов розмітки в одному документі.

Джерела[ред.ред. код]

  1. а б W3C Standerds HTML & CSS
  2. Tim Berners-Lee, «Information Management: A Proposal.» CERN (March 1989, May 1990).
  3. «First mention of HTML Tags on the www-talk mailing list». World Wide Web Consortium. 1991-10-29. Архів оригіналу за 2013-05-12. Процитовано 2009-11-19. 
  4. а б «Index of elements in HTML 4». World Wide Web Consortium. 1999-12-24. Архів оригіналу за 2013-05-12. Процитовано 2009-11-19. 
  5. Tim Berners-Lee (1991-12-09). «Re: SGML/HTML docs, X Browser (archived www-talk mailing list post)». Архів оригіналу за 2013-05-12. Процитовано 2009-11-19. «SGML is very general. HTML is a specific application of the SGML basic syntax applied to hypertext documents with simple structure.» 
  6. а б Raymond, Eric. «IETF and the RFC Standards Process». The Art of Unix Programming. Процитовано 2009-11-21. 
  7. Information Management: A Proposal, Tim Berners-Lee, 1989
  8. HTML, Urversion
  9. A Review of the HTML+ Document Format, David Raggett
  10. HTML 5, W3C Working Draft
  11. «Help and FAQ for the Markup Validator». World Wide Web Consortium. 2007-07-06. Архів оригіналу за 2013-05-12. Процитовано 2009-11-29. «One of the important maxims of computer programming is: «Be conservative in what you produce; be liberal in what you accept.»» 
  12. «HTML Design Constraints». 03. Архів оригіналу за 2013-05-12. Процитовано 2009-12-01. «Many text editing systems (Microsoft Word, The NeXT text object, the Mac text object, etc) handle text in a variety of styles but do not have any concept of nestable structure in the SGML sense. …It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.» 
  13. Pris Sears (1996). «HTML». Архів оригіналу за 2013-05-12. Процитовано 2009-12-01. «The final control of HTML rests squarely on the shoulders of individual authors of HTML documents. If authors can be seduced by blinking, barking, and spinning proprietary tags, and do not care who is excluded by such practices, the Web will become more and more fragmented. If authors decide that the most important facet of HTML is its device independence, its ability to make information sharable to everyone in the world, regardless of software and hardware, then HTML specifications will be adhered to.» 
  14. Berners-Lee, Tim; Fischetti, Mark (2000). Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web by Its Inventor. San Francisco: Harper. ISBN 978-0-06-251587-2. 
  15. «Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification». W3C. 2009-09-08. Архів оригіналу за 2013-05-12. Процитовано 2009-12-01. «CSS 2.1 is a style sheet language that allows authors and users to attach style (e.g., fonts and spacing) to structured documents (e.g., HTML documents and XML applications). By separating the presentation style of documents from the content of documents, CSS 2.1 simplifies Web authoring and site maintenance.» 
  16. Tim Berners-Lee, James Hendler and Ora Lassila (2001). «The Semantic Web». Scientific American. Архів оригіналу за 2013-05-12. Процитовано 2009-12-01. «At the doctor's office, Lucy instructed her Semantic Web agent through her handheld Web browser. The agent promptly retrieved information about Mom's prescribed treatment from the doctor's agent, looked up several lists of providers, and checked for the ones in-plan for Mom's insurance within a 20-mile radius of her home and with a rating of excellent or very good on trusted rating services. It then began trying to find a match between available appointment times at Pete's and Lucy's busy schedules. In a few minutes the agent presented them with a plan. Pete didn't like it. University Hospital was all the way across town from Mom's place, and he'd be driving back in the middle of rush hour. He set his own agent to redo the search with stricter preferences about location and time. Lucy's agent, having complete trust in Pete's agent in the context of the present task, automatically assisted by supplying access certificates and shortcuts to the data it had already sorted through. Almost instantly the new plan was presented: a much closer clinic and earlier times.…» 
  17. Nigel Shadbolt, Wendy Hall and Tim Berners-Lee (2006). «The Semantic Web Revisited». IEEE Intelligent Systems. Архів оригіналу за 2013-05-12. Процитовано 2009-10-02. 
  18. http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2004-June/000005.html
  19. Krill, Paul (2009-06-16). «HTML 5: Could it kill Flash and Silverlight?». InfoWorld. Computerworld. Архів оригіналу за 2013-05-12. Процитовано 2009-12-02. «HTML 5, a groundbreaking upgrade to the prominent Web presentation specification, could become a game-changer in Web application development, one that might even make obsolete such plug-in-based rich Internet application (RIA) technologies as Adobe Flash, Microsoft Silverlight, and Sun JavaFX.» 
  20. «Introduction — HTML5». W3C. Архів оригіналу за 2013-05-12. Процитовано 2009-12-02. «This specification is limited to providing a semantic-level markup language and associated semantic-level scripting APIs for authoring accessible pages on the Web ranging from static documents to dynamic applications.» 
  21. «When will HTML5 be finished?». WHATWG Wiki. Архів оригіналу за 2013-05-12. Процитовано 2009-12-02. «Different parts of the specification are at different maturity levels. Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today. But other sections are still being actively worked on and changed regularly, or not even written yet.» 
  22. Steven Pemberton (2004-07-21). «HTML and XHTML Frequently Answered Questions». Архів оригіналу за 2013-05-12. Процитовано 2009-12-08. «HTML is probably the most successful document markup language in the world. But when XML was introduced, a two-day workshop was organised to discuss whether a new version of HTML in XML was needed. The opinion at the workshop was a clear 'Yes': with an XML-based HTML other XML languages could include bits of XHTML, and XHTML documents could include bits of other markup languages. We could also take advantage of the redesign to clean up some of the more untidy parts of HTML, and add some new needed functionality, like better forms.» 
  23. Steven Pemberton (2004-07-21). «HTML and XHTML Frequently Answered Questions». Архів оригіналу за 2013-05-12. Процитовано 2009-12-08. «If your document is just pure XHTML 1.0 (not including other markup languages) then you will not yet notice much difference. However as more and more XML tools become available, such as XSLT for tranforming documents, you will start noticing the advantages of using XHTML. XForms for instance will allow you to edit XHTML documents (or any other sort of XML document) in simple controllable ways. Semantic Web applications will be able to take advantage of XHTML documents. If your document is more than XHTML 1.0, for instance including MathML, SMIL, or SVG, then the advantages are immediate: you can't do that sort of thing with HTML.» 

Див. також[ред.ред. код]

Посилання[ред.ред. код]

Валідатори HTML розмітки[ред.ред. код]

Підручники[ред.ред. код]

Специфікація W3C[ред.ред. код]