Přístupnost webu II: Jak na správnou strukturu HTML

Vladimír Kašpar , 19. prosinec 2011 10:02 2 komentářů
Přístupnost webu II: Jak na správnou strukturu HTML

V prvním článku "Jak správně na přístupnost webu" našeho seriálu jsem vám popsal základní informace o tom, co byste měli při návrhu webu pro nevidomé a další hendikepované skupiny vědět. V dnešním článku Vám ukáži rozdělení HTML layoutů, jejich specifika a jak správně HTML dokument strukturovat.

HTML šablony

HTML data webu ve zdrojovém kódu zpravidla obsahují ze shora definici DTD (Doctype), poté HTML hlavičku

<head> a ve spodní části tělo HTML dokumentu <body >, my se zaměříme zejména na část dokumentu, kde jsou obsažena zobrazovaná data tj. tělo HTML dokumentu a dnes na její specifickou část HTML šablonu (angl. layout) bez ohledu na to, jaká data web obsahuje.

HTML šablona každého webu obsahuje zejména rozdělení objektů jako je menu, datový obsah či boční panely a patička. Aby bylo čtení co nejjednodušší pro naší cílovou skupinu, je potřeba dostat v HTML kódu důležité, základní informace o stránce, co nejvýše.

HTML šablony si můžeme pro naše potřeby rozdělit do 3 typů:

1. Rámy

Každý objekt šablony je zobrazován v tagu a pomocí atributu „src“ je načítán z externího HTML souboru. Rámy, jsou již dávnou historií a dnes pro neaktuálnost této technologie se běžně nepoužívají. Načítání externích souborů tak, abychom nemuseli např. hlavičku, a hlavní menu na každé stránce, ručně vypisovat, doporučuji spíše řešit na straně serveru, kde k tomu jsou k dispozici mnohem lepší nástroje, např. skriptovací jazyk PHP a jeho funkce „include()“ a „require()“.

2. Tabulka

Objekty jsou ve stránce rozděleny skrytou tabulkou tagem

<table>, jeho řádky <tr> a jednotlivými buňkami v řádku . Tabulka nám jednoduše zajistí správné pozice a roztažnost bez použití CSS stylů. Tento způsob se zdá být velice jednoduchý pro nováčka v oboru, ale je velice nepraktický v případě, kdy chceme objekty po HTML kódu posouvat či přehazovat bez poškození grafiky webu.

3. Divy

Každý objekt šablony je zabalen do tagu

<div> a CSS styly jsou objekty umisťovány do grafiky. Divy jsou dnes nečastěji používané pro rozdělení objektů po grafice webu. V CSS stylech si můžeme „hrát“ a jednoduše prohazovat objekty v grafice tak, že například to, co vidíme v HTML kódu úplně dole, zobrazíme v grafice úplně nahoře apod. Prohazování objektů nám zjednoduší práci s rozdělením důležitého objektu pro zdravého uživatele a pro nevidomého. Budeme tento typ brát jako dnešní standard a budeme se jím zabývat i nadále.

Jak na správný HTML dokument

Každá strana webu, má dle mezinárodních standardů obsahovat hlavní nadpis stránky

<h1>, ten má být na každé stránce webu unikátní a použit právě jednou. Tag h1 nesmíme použít ve stránce vícekrát. Hlavní nadpis bychom pro nevidomé měli dát hned pod tag <body> a to tak, aby byla hendikepovanému návštěvníkovi ihned na začátku čtení dokumentu sdělena informace na jaké stránce, se která informace nachází. Pod Hlavním nadpisem by měly být hlavní data, které chceme uživateli přednést (např. když zobrazujeme článek na webu, tak text článku by měl mít v HTML kódu hned po hlavním nadpisem). Pod hlavními daty by se měla nacházet navigace (menu), které umožní uživateli další postup po webu. Až teprve po zobrazení těchto důležitých informací by měly následovat boční panely zobrazující reklamní bannery, nedůležité informace apod.

Jak správně usazovat objekty po grafice webu

Obrázek 1 - Grafické schéma ukázky

Naším dnešním cílem v ukázce bude vytvořit základní šablonu dle schématu. HTML dokument tedy bude obsahovat v horní části menu (horizontální menu). Po levé straně budeme mít Hlavní data (text) stránky, tento objekt musí být roztažitelný směrem dolů, dle objemu dat v objektu. Po pravé straně budeme mít Boční panel, pro umístění např. reklamních bannerů či nedůležitých informací. Každý web by měl mít také patičku, do které se vkládá např. definování autorských práv.

Pomocí CSS stylů „Float“

Obrázek 2 – Klasické využití Float

Ve zdrojovém kódu na obrázku 2 vidíme dnes běžný zdrojový kód HTML dokumentu, který je dle standardu W3C správně, ale pro nevidomého předkládáme Menu s Reklamním bannerem před daty, které ve skutečnosti chtěl vědět. Musí tedy zbytečně čekat, až mu hlasový syntezátor přečte informace výše uvedené, než se dostane k informaci, kterou chtěl a pak doufat, že čekání nebylo zbytečné a dostal důležitou informaci.

Absolutní pozicování a přehození pořadí objektů

Obrázek 3 - Absolutní pozicování

Na obrázku 3 vidíme HTML dokument s využitím absolutního pozicování. Tímto stylem zápisu můžeme upřednostnit v pořadí náš hlavní nadpis stránky s hlavním textem stránky před ostatními objekty, přitom v grafice pro zdravého uživatele zobrazujeme Menu stále v horní části stránky. Pokud objektu nastavíme v CSS stylech position:absolute; říkáme tím, že objekt bude nastaven v pozici od horního levého rohu prohlížeče a můžeme poté využít styly top a left.

Pokud jeden z rozměrů nenastavíme, tak se bere z aktuální pozice objektu, můžeme této funkcionality využít v případě, kdy chceme jako v tomto případě dostat v grafice objekt úplně nahoru nastavením position:absolute;top:0;

Pro objekty hlavní text stránky a boční panel, musíme poté nastavit odsazení shora dle výšky menu pomocí margin-top. Pro zachování roztažnosti objektu s hlavním textem je potřeba patičce opět nastavit vyčištění float CSS stylem clear:both. Nevidomému hlasový syntezátor začne ze shora číst hlavní nadpis a hned poté hlavní text stránky, uživatel tedy není trápen pro něj nedůležitými informacemi.

A co SEO?

Pokud použijeme absolutní pozicování a do hlavního nadpisu stránky (html tag "h1") vložíme klíčové slovo, na které chceme optimalizovat stránku pro vyhledávače, připravíme si vhodně strukturovaný a optimalizovaný text do objektu pro hlavní text stránky. Tak jsme vyhráli dvakrát, protože jsme připravili stránku pro jednoduché čtení hendikepovanými uživateli a ještě jsme si pomohli u marketingové záležitosti jako optimalizace pro vyhledávače.

Na další díly seriálu se můžete těšit po Novém roce.

Vladimír Kašpar

Vladimír Kašpar

Autor pracuje na pozici senior software developer ve firmě Effectix.com.


Komentáře

Jan Elznic #1
Jan Elznic 30. prosinec 2011 08:53

Myslel jsem, že se z článku dozvím něco o přístupnosti webových stránek (aplikací) pro nevidomé či slabozraké, ale článek spíše pojednává o teoretických základech kódování v HTML. Jaká část z toho článku tedy vlastně má něco konkrétně společného s přístupností?

Patrik Kaspar 31. leden 2012 10:04

Jde o základní kódování, to je jasný, nicméně proč pro manažery, markeťáky a IT manažery psát o stránkách pro nevidomé?
Jde o autora z firmy SEO, čili je jasné, jaká přístupnost by to asi měla být ;-)


RSS 

Komentujeme

Chatbot mluví za mrtvého – od nápadu k realizaci

Pavel Houser , 30. listopad 2016 13:00
Pavel Houser

Na webu The Verge popsala Casey Newton příběh dvou přátel (Eugenia Kuyda a Roman Mazurenko). Peripet...

Více





Kalendář


RSS 

Zprávičky

Telefony Nokia se příští rok vrátí na trh

ČTK , 02. prosinec 2016 10:30

Chytré telefony se značkou Nokia se objeví zpátky na trhu v příštím roce. Finská společnost Nokia dn...

Více 2 komentářů

CETIN nabídne příští rok operátorům připojení až 250 Mbit/s

ČTK , 01. prosinec 2016 17:00

Společnost Česká telekomunikační infrastruktura (CETIN) zvýší od května příštího roku rychlost inter...

Více 0 komentářů

Akcie Samsungu stouply na nový rekord

ČTK , 01. prosinec 2016 12:00

Akcie jihokorejské společnosti Samsung Electronics dnes stouply o více než čtyři procenta na nový re...

Více 0 komentářů

Starší zprávičky

FBI bude moci s povolením soudu pronikat do jakýchkoli počítačů

ČTK , 01. prosinec 2016 10:30

V americkém Senátu dnes selhal poslední pokus o zablokování rozšířených policejních pravomocí, které...

Více 2 komentářů

Gartner:Prodej tabletů v ČR letos klesne o osm procent na 1,1 mil

ČTK , 30. listopad 2016 14:00

Zájem o tablety letos dále klesá. Prodej tabletů a hybridních notebooků na českém trhu se letos sníž...

Více 0 komentářů

Grafen opracovaný laserem

Pavel Houser , 30. listopad 2016 11:00

Na Iowa State University přišli s další metodou pro tištění grafenových součástek. V tomto případě j...

Více 0 komentářů

GFI Software přichází s beta verzí pokročilé cloudové ochrany e-mailu

Petr Velecký , 29. listopad 2016 18:00

Beta verzi své nejnovější cloudové platformy pro zajištění bezpečnosti a kontinuity provozu podnikov...

Více 0 komentářů