Przykładowa strona w HTML5/CSS3

Wyniki testu zgodności przeglądarek z HTML5 i CSS3

Test wykonywany na stronie http://html5test.com/ w dniu 15.02.11 dał następujące wyniki: Chrome 9.0 - 242 pkt, Opera 11.01 - 177 pkt, Firefox 3.6.13 - 139 pkt, IE 8 - 27 pkt.

Od dawna największym problemem autorów stron internetowych jest niepełna obsługa standardów sieciowych przez przeglądarki internetowe i wynikające stąd różnice w wyglądzie strony napisanej zgodnie ze standardami sieciowymi zależne od tego, w której przeglądarce otworzył stronę użytkownik. Aby te różnice ograniczyć lub nawet wyeliminować, stosowano różne metody wymagające najczęściej dużych nakładów dodatkowej pracy czyli pisania specyficznego kodu uwzględniającego możliwości każdej z popularnych przeglądarek lub redukowano teoretycznie możliwą funkcjonalność strony. Organizacja W3C określająca standardy sieciowe wstrzymała rozwój języka HTML proponując w zamian standard XHTML, ale kiedy ogłoszono, że XHTML w wersji 2.0 nie będzie kompatybilny wstecz producenci przeglądarek doprowadzili do odrzucenia tej propozycji, zaniechania prac nad XHTML 2.0 i wznowienia prac nad rozwojem języka HTML.

Obecnie trwają intensywne prace nad HTML5 i znane są już podstawowe elementy przyszłej oficjalnej specyfikacji. Producenci przeglądarek stopniowo w kolejnych wersjach wdrażają obsługę nowych elementów języka. Projektując strony internetowe można zatem wdrażać te elementy, które są już dzisiaj uwzględnione w najnowszych wersjach przeglądarek. Problem polega na tym, że Firefox, Opera i Chrome radzą już sobie z nowymi elementami języka w znacznym zakresie, natomiast MSIE 8 (i starsze wersje) prawie wcale nie uwzględnia postulowanych zmian. Przełom ma nastąpić wraz z wprowadzeniem MSIE 9, ale Microsoft zapowiada, że nowa przeglądarka nie jest przeznaczona dla systemu Windows XP, obecnie najpopularniejszego systemu operacyjnego na rynku (60,09% użytkowników internetu w Polsce, luty 2011r. ) . Ponieważ sytuacja jest dynamiczna warto śledzić zachodzące w tym obszarze zmiany, by nie zostać w tyle w stosunku do konkurencji.

Od 1991r., kiedy opublikowano pierwszą, publicznie dostępną, specyfikację języka HTML, rozwój języka był ściśle związany z rozwojem przeglądarek internetowych. Twórcy przeglądarek eksperymentowali z HTML-em modyfikując atrybuty istniejących już znaczników oraz dodając całkowicie nowe. Różnice w interpretowaniu kodu stron internetowych przez poszczególne przeglądarki zmuszały autorów stron do stosowania różnych sztuczek mających na celu osiągnięcie jednakowego wyglądu strony niezależnie od przeglądarki uruchomionej po stronie użytkownika. Rozwiązania zdobywające uznanie i popularność wśród autorów stron z czasem trafiały do kolejnych wersji specyfikacji języka i stawały się zalecanymi standardami.

Niestety rozwój przeglądarek nie gwarantował szybkiego wdrażania tych standardów. Z powodu braku porozumienia z producentami przeglądarek, którzy nie godzili się na nowe rozwiązania proponowane jako standard, rozwiązano w 1996 r. HTML Working Group i zarzucono prace nad wersją 3.0. Od wersji 3.2 wydanej w 1997 r. prace nad rozwojem języka i rekomendacje dla kolejnych wersji wydaje organizacja W3C, w której pracach uczestniczą również producenci oprogramowania.. Ostatnią opublikowaną wersją języka jest wersja 4.01 opublikowana 24.12.1999 r. Przez kolejne lata utrzymywał się pogląd, że rozwój języka HTML się zakończył i dalej rozwijany będzie język XHTML skonstruowany na bazie HTML 4.01 przy użyciu XML 1.0. 26.01 2000 r. opublikowano wersję XHTML 1.0, a 31.05.2001r. Wersję 1.1. Przygotowywana wersja XHTML 2.0 została opublikowana jako szkic, nie zyskała powszechnej akceptacji i została całkowicie porzucona, gdyż nie była kompatybilna z poprzednimi wersjami.

Obecnie od 1997 r. W3C (World Wide Web Consortium; Konsorcjum Sieci Web) jest główną organizacja standaryzująca Sieć. Zajmuje się ona tworzeniem i rozwijaniem standardów sieciowych, takich jak choćby języki XHTML, służące do tworzenia stron WWW, i CSS, opisujący wygląd tychże stron. Standardy są ważne, ponieważ znacząco polepszają dostępność treści na stronach WWW zarówno dla ludzi, jak i dla komputerów. Poza tym stosowanie się do wspólnych reguł zwiększa stabilność tworzonych rozwiązań, a przez to podnosi efektywność pracy zespołów je opracowujących. Dotąd świat projektantów WWW dzielił się na firmy i technologie, które wspierają W3C i te, które wspierają je inaczej. Prym w tej drugiej grupie, nie wiadomo dlaczego, wiódł Microsoft. Jakoś zawsze tak się układało, że technologie internetowe tworzone przez tę firmę nijak miały się do jasnych i prostych standardów wyznaczonych przez W3C. Wiodąca rola W3C została podważona kiedy w 2004 r. Mozilla Foundation, Opera Software i Apple Computer utworzyły WHATWG (Web Hypertext Application Technology Working Group; Grupa Robocza ds. Technologii Hipertekstowych Aplikacji Sieciowych). Powodem utworzenia nowej organizacji było niezadowolenie z wyników działalności W3C, jej opieszałości w podejmowanych działaniach i kontrowersyjnym propozycjom nowych standardów sieciowych.

Kolejną wersją rozwojową okazała się wersja XHTML5, która jest aktualizacją XHTML 1.1 i jest zdefiniowana wraz z HTML5 w kolejnym szkicu (Working Draft) opublikowanym 22.01.2008r. Nad 5 wersją pracuje równolegle grupa robocza WHATWG zrzeszająca osoby reprezentujące producentów przeglądarek Apple, Mozilla i Opera, deweloperów i ludzi zainteresowanych rozwojem nowej generacji HTML oraz technologii pokrewnych, w szczególności takich, które pozwalają autorom pisać i umieszczać aplikacje w sieci internetowej. Plan prac przewiduje, że specyfikacja ta uzyska status publiczny w 2012 r. Rekomendacją będzie dopiero po zakończeniu wszystkich testów (ok. 20000), sprawdzających czy jest w pełni wdrożona i interoperacyjna i może to zająć jeszcze kilkanaście lat. Producenci przeglądarek stopniowo implementują w swoich produktach obsługę nowych znaczników wprowadzonych w wersji HTML5 oraz obsługę kaskadowych arkuszy stylów CSS3 zapewniających nowe możliwości w warstwie prezentacji. WHATWG i W3C są zgodne co do wielu kwestii dotyczących specyfikacji, ale występują również różnice w podejściu do pewnych zagadnień.

W specyfikacji HTML 5 jest 28 nowych znaczników i jednocześnie usunięto 14 znaczników znanych z poprzednich wersji. HTML5 wprowadza cały zestaw nowych znaczników, które upraszczają budowę struktury dokumentu. Strony w HTML 4 lub w XHTML 1.1 zawierają zazwyczaj strukturę (m.in. nagłówki, stopki i kolumny), którą dotychczas budowano za pomocą znaczników blokowych div wraz z nadanymi identyfikatorami (id) lub klasami (class). Nowe znaczniki takie jak header, nav, section, article, aside i footer pozwalają budować strukturę dokumentu w sposób bardziej zrozumiały i przejrzysty. Znacznie uproszczono strukturę części head dokumentu. Najlepiej widać różnice, gdy porównamy starą i nową strukturę tej części dokumentu. Więcej informacji można znaleźć na oficjalnych stronach projektu (linki w prawym menu strony i w dziale Linki).