2015-06-10 16 views
9

Desidero rendere la mia pagina HTML adatta agli screen reader.Come impostare la priorità per gli screen reader di alcune parti di pagine HTML?

Attualmente, la pagina ha 3 parti principali: intestazione, sidebar e contenuti:

enter image description here

Gli screen reader leggono intestazione in un primo momento, poi barra laterale e, infine, i risultati di ricerca .

Sfortunatamente, gli utenti che hanno problemi con la vista aspettano molto tempo mentre il programma leggerà tutto il contenuto della barra laterale (perché la barra laterale contiene molti filtri). Come posso impostare una priorità più grande per i risultati della ricerca? Causa i risultati della ricerca dovrebbero essere letti prima del contenuto della barra laterale.

E sarà grande se qualcuno mi forniscono un tutorial HTML su quello che posso fare per aumentare il livello di accessibilità delle pagine HTML:

  • Come posso cambiare alcuni elementi DIV per essere saltate dal lettore di schermo?
  • Come posso modificare una sequenza di contenuti della pagina di lettura?
  • Come posso rendere leggibile solo il modulo di ricerca ei risultati di ricerca (e alcuni collegamenti)?
+0

Questa è solo una risposta parziale, ma utilizzando elementi HTML5 come intestazione, piè di pagina, nav, a parte, l'articolo e la sezione aiuterà la vostra causa. Inoltre, assicurarsi di utilizzare i ruoli di riferimento aria (role = "search", role = "navigation", role = "main", ecc.) Sugli elementi div appropriati. – cfnerd

+0

Posso chiederti perché stai cercando di fare queste cose? – unobf

+0

@unobf perché ho una grande lista di filtri di ricerca e gli utenti vogliono sentire i risultati di ricerca in un primo momento – bmalets

risposta

3

Non cercare di nascondere il contenuto degli utenti di screen reader, vorranno avere accesso a tale contenuto. Invece, è possibile aggiungere punti di riferimento alle aree di contenuto. I lettori di schermo saranno quindi in grado di passare direttamente alla parte pertinente della pagina, inclusi i risultati, ma saranno comunque in grado di raggiungere gli altri controlli quando ne avranno bisogno.

Se è possibile utilizzare HTML5, utilizzare i <header>, <aside> o <nav> e poi i <main> elementi per l'intestazione, filtri e di navigazione laterale e risultati di ricerca, rispettivamente.

Se non è possibile utilizzare HTML5, aggiungere role = "banner", role = "complementary", role = "navigation" e role = "main" agli elementi di wrapping di queste regioni.

Come procedura si dovrebbe anche aggiungere voce struttura al documento (screen reader può navigare da questi troppo) e un link di salto (per gli utenti vedenti, tastiera-only)

0

Una cosa comune da fare è avere un collegamento "salta la navigazione" che è un riferimento di ancoraggio fino a dove inizia il tuo contenuto reale. Ciò consente agli screen reader di saltare in avanti.

<a href="#main" class="skip-navigation">Skip Navigation</a> 

... 

<h1 id="main">Search Results</h1> 

Se si desidera, è possibile lo stile in un modo che sarà ancora ripresa da lettori di schermo, ma invisibile ai normali browser.

.skip-navigation { 
    position: absolute; 
    left: -5000px; 
    top: 0; 
    width: 1px; 
    height: 1px; 
    overflow: hidden; 
} 
+0

grazie a @Brad, ma per quanto riguarda i tag 'div' ? sarà saltato come collegamento se contiene la classe 'skip-navigation'? – bmalets

+2

HTML5 fornisce tag come 'header',' aside' e 'article' che aggiunge un significato semantico a una pagina web. Insieme ai collegamenti di salto, questi possono anche essere utilizzati per una pagina più accessibile. – Pratap

+0

@bmalets La classe 'skip-navigation' qui è solo per lo stile. Non hai bisogno di usarlo. L'intera azione qui è che hai un link a un riferimento su pagina. – Brad

0

problema è stato risolto con "aria-live" propery

Lo screen reader legge il tag "aria-live" dopo ogni modifica del contenuto. Quindi, se l'utente cambia il testo nel modulo di ricerca, lo screen reader leggerà il contenuto del tag "aria-live" con risultati di ricerca caricati con una carica.

testato con ChromeVox

Problemi correlati