HTML

HTML (ang. HyperText Markup Language) to hipertekstowy język znaczników czyli dodatkowych elementów opisujących właściwą zawartość dokumentu, obecnie szeroko wykorzystywany do tworzenia stron internetowych. Pozwala opisać strukturę informacji zawartych wewnątrz strony internetowej, nadając znaczenie poszczególnym fragmentom tekstu, formując hiperłącza, akapity, nagłówki, listy oraz osadza w tekście dokumentu obiekty plikowe np. multimedia bądź elementy baz danych np. interaktywne formularze danych.

HTML umożliwia określenie wyglądu dokumentu w przeglądarce internetowej szczegółowo opisując formatowania akapitów, nagłówków, użytych czcionek i kolorów z wykorzystywaniem własnych znaczników (starsze wersje) lub przy pomocy obecnie stosowanych i zalecanych kaskadowych arkuszy stylów (CSS).

W składni HTML wykorzystuje się znaczniki umieszczone w nawiasach ostrokątnych, które zazwyczaj używa się w parach do oznaczenia początku i końca, np. <title> i </title> lub <h1> i </h1>. Oprócz nich w składni występują również samodzielne znaczniki, np. <meta>, <br />

html

Należy nadmienić, że HTML, będąc językiem znaczników, nie jest zaliczany do języków programowania – w jego składni nie przewidziano wyrażeń obliczeniowych, warunkowych czy iteracyjnych. HTML pozwala jednak na osadzanie ciągów instrukcji języków skryptowych, umieszczonych pomiędzy znacznikami <script> i </script>.

Ważną cechą HTML-a, która przyczyniła się do popularności systemu WWW oraz Internetu, jest niezależność od systemu operacyjnego i wykorzystywanego sprzętu komputerowego.

Pierwsza, publicznie dostępna, specyfikacja języka HTML, nazwana HTML Tags (pol. Znaczniki HTML), została zamieszczona w Internecie przez Bernersa-Lee w 1991. Zawiera 22 znaczniki, tworzące początkowy, prosty szkielet HTML-a. Trzynaście z tych elementów istnieje do tej pory w specyfikacji HTML 4.

HTML został napisany w oparciu o język SGML, jednak nie posiadał formalnej definicji w SGML-u (ang. Standard Generalized Markup Language)– standardowy uogólniony język znaczników służący do ujednolicania struktury i formatu różnego typu informacji – danych. Pozwala zapisać je w formie dokumentu tekstowego i dzięki temu łatwo przenosić, wyświetlać i drukować w różnych systemach elektronicznego przekazu danych.). Sytuacja zmieniła się w połowie 1993, kiedy organizacja IETF (Internet Engineering Task Force to nieformalne, międzynarodowe stowarzyszenie osób zainteresowanych ustanawianiem standardów technicznych i organizacyjnych w Internecie) opublikowała pierwszą propozycję specyfikacji języka HTML autorstwa Bernersa-Lee i Dana Connolly – Hypertext Markup Language (HTML) Internet-Draft (pol. szkic) – zawierającą opis gramatyki w postaci SGML  Document Type Definition (pol. definicja typu dokumentu). Opierając się na tym dokumencie twórcy przeglądarek eksperymentowali z HTML-em modyfikując atrybuty istniejących już znaczników oraz dodając całkowicie nowe. Szkic wygasł sześć miesięcy później, ale był znany z obsługiwania specyficznych dla przeglądarki NCSA Mosaic znaczników, służących do wstawiania obrazków. Fakt ten odzwierciedlał filozofię IETF bazowania przyszłych standardów na prototypach, które odniosły sukces. Podobnie Dave Raggett pod koniec 1993 w swoim szkicu HTML+ (Hypertext Markup Format) sugerował standaryzację już zaimplementowanych znaczników np. związanych z tworzeniem tabel i formularzy.

Po wygaśnięciu szkiców HTML i HTML+ na początku 1994 organizacja IETF wydzieliła HTML Working Group, która w 1995 stworzyła HTML 2.0 – pierwszą oficjalną specyfikację języka HTML, traktowaną jako standard i podstawę przyszłych implementacji kolejnych wersji HTML-a. Specyfikacja HTML 2.0, opublikowana w 1996 jako Request for Comments, zawierała pomysły zarówno ze szkicu HTML jak i HTML+. „HTML 1.0” nigdy nie istniał. Oznaczenie 2.0 zostało nadane w celu odróżnienia nowej specyfikacji od wcześniejszych szkiców.

Dalszy rozwój HTML-a pod pieczą IETF przeciągał się ze względu na konflikt interesów. Od 1996 specyfikacje HTML rozwijane były z udziałem komercyjnych producentów oprogramowania przez organizację World Wide Web Consortium (W3C). W 2000 HTML stał się międzynarodowym standardem (ISO/IEC 15445:2000). Ostatnia specyfikacja języka HTML to opublikowana w 1999 przez W3C – HTML 4.01.

W 2000 roku na bazie języka HTML zaczęto rozwijać jego wersję XML pod nazwą XHTML. XHTML (ang. Extensible HyperText Markup Language, rozszerzalny język znaczników hipertekstowych) to język służący do tworzenia stron WWW ogólnego przeznaczenia. Specyfikacje XHTML przygotowuje organizacja W3C.

XHTML/1.0 nie jest następcą HTML, a jedynie przedstawieniem HTML 4.01 w postaci XML. XHTML/2.0 miał być następcą HTML, niekompatybilnym wstecz, ale ze względu na niekompatybilność Internet Explorera, a co za tym idzie niechęć użytkowników, W3C zadecydowało o kontynuowaniu linii XHTML/1.0 i HTML 4 jako XHTML 1.1 i HTML 5.

W odróżnieniu od HTML-a (który jest zastosowaniem SGML), dokumenty pisane w XHTML są zgodne z oficjalną specyfikacją XML (to znaczy, że dokumenty w XHTML są poprawnymi dokumentami XML) i dzięki temu można je łatwo generować z innych dokumentów XML przy pomocy np. transformacji XSLT, a także automatycznie przekształcać w inne formy XML-a. Dzięki temu dokumenty te posiadają większe możliwości, jak choćby wstawianie innych dokumentów za pomocą jednej metody (element <object/>), zagnieżdżanie wzorów matematycznych (język MathML), czy grafik wektorowych (język SVG).

Jedną z największych zalet XHTML jest możliwość łączenia z innymi językami zgodnymi z XML, np. wspomniany już MathML czy SVG. Odbywa się to dzięki wykorzystaniu mechanizmu przestrzeni nazw XML.

Obecnie nowe przeglądarki, takie jak Firefox czy Opera, praktycznie w pełni obsługują XHTML, lecz program mający największy udział w rynku – Internet Explorer – obsługuje XHTML-owy typ zawartości dopiero od wersji 9. W praktyce zmuszało to webmasterów do stosowania dla dokumentów XHTML starego HTML-owego typu zawartości – dzięki temu, że XHTML w wersji 1.0 „symuluje” HTML 4 (tzn. posiada praktycznie taki sam zestaw elementów i atrybutów), wyświetlanie XHTML jako HTML nie sprawia większych problemów w żadnej przeglądarce, o ile dokument nie wykorzystuje dodatkowych możliwości XHTML, których nie ma w HTML (przedrostków nazw elementów, innych przestrzeni nazw, XML DOM), zachowanie to uznawane jest za nieprawidłowe, choć dopuszczalne, ze względu na niezgodność wcześniejszych wersji Internet Explorera.

Kolejne wersje XHTML-a – XHTML 1.1 i XHTML 2, wprowadzały kolejne zmiany. Niestety w związku z brakiem kompatybilności ze wcześniejszymi wersjami Internet Explorera projekt został zarzucony w 2009 roku. Wiązało się to również z rozpoczęciem przez W3C prac nad HTML 5.

HTML5 to język wykorzystywany do tworzenia i prezentowania stron internetowych www. Jest rozwinięciem języka HTML 4 i jego XML-owej odmiany (XHTML 1), opracowywane w ramach prac grupy roboczej WHATWG (Web Hypertext Application Technology Working Group) i W3C.

Jest to konkurencyjna specyfikacja w stosunku do specyfikacji XHTML 2, której rozwój został porzucony 2 lipca 2009 roku – wsparcie wszystkich środowisk i producentów przeglądarek ukierunkowane jest na HTML 5. Nazwę można zapisywać jako HTML 5 – jako wersję lub HTML5 – jako nazwę. Prace nad specyfikacją zostały ukończone w 2014 roku – 28 października standard został oficjalnie wydany jako rekomendacja W3C. Dwa lata później – w 2016 roku – ma być gotowy HTML 5.1; wówczas ma być także zaprezentowany szkic standardu HTML 5.2.

Główna różnica pomiędzy HTML 5 a XHTML 2 polega na tym, że HTML 5 jest pisane z myślą o kompatybilności wstecznej (cecha standardu, urządzenia lub oprogramowania, dzięki której – mimo zmiany funkcjonalności – nowa wersja umożliwia współpracę z całym otoczeniem starej wersji i jej wszystkimi komponentami. Mówi się wtedy o rozszerzeniu funkcjonalności.), podczas gdy XHTML 2 zrywało z kompatybilnością.

HTML5 poza dodaniem nowych elementów, usprawniających tworzenie serwisów i aplikacji internetowych, doprecyzowuje wiele niejasności w specyfikacji HTML 4, dotyczących przede wszystkim sposobu obsługi błędów. Niejasności co do sposobu, w jaki przeglądarki powinny obsługiwać błędy w kodzie HTML są jedną z podstawowych przyczyn, dla której wiele serwisów internetowych, napisanych z naruszeniem specyfikacji, w różnych przeglądarkach działa w inny sposób – w niektórych działając, w innych nie. Dzięki HTML-owi 5 obsługa błędów ma być ta sama we wszystkich przeglądarkach, czyli zły element będzie działać w każdej przeglądarce albo żadnej.

HTML5 także stawia na semantykę. Element <div> traci na znaczeniu na rzecz <header> <main> <article> <aside> <footer> <nav>, a dodane zostają m.in. <canvas> <figure> <details> <summary>. Element <span> ma być mniej używany na rzecz <mark> <output> <var> <u> <s> (ostatnie dwa znaczniki były w HTML4 przestarzałe – deprecated).

Grupa pracująca nad HTML5 przyjęła inny sposób myślenia. Na przykład podkreślenie i przekreślenie podczas tworzenia HTML 4 uznano za elementy czysto prezentacyjne i przestarzałe – miały zostać usunięte w HTML5. Nawet kursywę i pogrubienie często próbowano zastąpić emfazą. W myśl tego nowe znaczniki liniowe nie powinny powstać.

za Wikipedia.pl