Presentazione di Maria Claudia Buzzi, Marina Buzzi

Transcript

Presentazione di Maria Claudia Buzzi, Marina Buzzi
WAI-ARIA
Maria Claudia Buzzi, Marina Buzzi
Ufficio Italiano W3C, IIT-CNR
[email protected], [email protected]
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
Agenda
WAI-ARIA
 Obiettivi
 Ruoli, Proprietà e Stati
 Live regions
 Drag-and-drop
 Focus e Navigazione da tastiera
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
2
WAI-ARIA
W3C Recommendation da marzo 2014
Aumentare l'accessibilità di ciò che è presente nelle
diverse parti di una pagina Web (anche contenuti
dinamici/RIA e componenti per l'interfaccia utente)
perché gli utenti con disabilità possano utilizzarle in
modo efficace
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
3
WAI-ARIA
Specificamente per:
• Utenti che non possono utilizzare mouse e strumenti di
puntamento
• Utenti non vedenti che utilizzano screen reader
• Utenti con disabilità cognitiva
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
4
WAI-ARIA
porta le caratteristiche di accessibilità delle
applicazioni desktop al web
In ambiente desktop, le AT ricevono informazioni dalle
interfacce di programmazione delle applicazioni (API) di
accessibilità specifiche per ogni sistema operativo.
WAI-ARIA rende lo stesso tipo di informazioni
direttamente disponibili per le applicazioni web
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
5
WAI-ARIA
interoperabilità tra browser e tecnologie assistive, es.
quando si utilizzano funzioni interattive come menù
espandibili e funzionalità drag-and-drop sui siti web
WAI-ARIA 1.0 User Agent Implementation Guide: mappa
WAI-ARIA alle caratteristiche di accessibilità di supporto
su diverse piattaforme.
Gli autori di contenuti che utilizzano WAI-ARIA potranno
più facilmente riproporre lo stesso contenuto web su
diverse piattaforme, senza perdita di supporto
dell’accessibilità (cross-platform)
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
6
Semantica da comunicare alla tecnologia assistiva (AT)
 Ruolo/stato di un widget
 Azioni su un elemento/proprietà
 Contenuti e aggiornamenti dinamici (live region)
 Struttura di un document (aree logiche/region)
 Saltare porzioni di contenuti
 Quando l’elemento riceve il focus (tabindex)
 Potenziare l’accesso via tastiera (es. drag-and-drop)
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
7
Role
Tipo dell’oggetto
Semantica per presentare/supportare l’interazione in maniera
consistente
 Document landmarks: application, banner, complementary,
contentinfo, form, main, navigation, search
 WAI-ARIA roles: alert, button, checkbox, combobox, grid, listitem,
document, progressbar, radio, log, etc.
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
8
Attributi: State and Property
State
 proprietà dinamica, esprime caratteristiche di un oggetto che
possono cambiare in risposta all’azione dell’utente o a processi
automatici
 Esempi: aria-checked, aria-pressed, aria-selected, aria-expanded
Property
 attributi essenziali della natura di un oggetto, o che ne
rappresentano un valore associato
 un cambio di una proprietà può impattare significativamente sul
significato o sulla presentazione di un oggetto
 Esempi: aria-multiline, aria-live, aria-flowto, aria-atomic, ariamultiselectable
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
9
Attributi: State and Property
Entrambi sono informazioni specifiche su un oggetto per definire
la natura del ruolo
Generalmente il valore di una proprietà (es. aria-labelledby) non
cambia frequentemente come uno stato (es. aria-checked, x
l’interazione dell’utente)
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
10
WAI-ARIA Roles
 Abstract Roles
 Widget Roles
 Document Structure Roles
 Landmark Roles
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
11
WAI-ARIA Abstract Roles
Usati solo per ontologie
Da non utilizzarsi per contenuti
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
12
Widget Roles: semplici
• alert
• menuitemcheckbox
• textbox
• alertdialog
• menuitemradio
• timer
• button
• option
• tooltip
• progressbar
• treeitem
• checkbox
• dialog
• gridcell
• link
• radio
• scrollbar
• slider
• spinbutton
• log
• status
• marquee
• tab
• menuitem
• tabpanel
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
13
Widget Roles: composti
 combobox
 grid
 listbox
 menu
 menubar
Contenitori che gestiscono altri
widget in essi contenuti
 radiogroup
 tablist
 tree
 treegrid
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
14
Document Structure Roles
•
article
•
note
•
columnheader
•
presentation
•
definition
•
region
•
row
•
rowgroup
•
rowheader
•
•
directory
document
•
group
•
separator
•
heading
•
toolbar
•
img
•
list
•
listitem
•
math
definiscono il contenuto di una
pagina
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
15
Landmark Roles
Aree o punti di riferimento per la navigazione nella pagina
 application
 banner
 complementary
 contentinfo
 form
 main
 navigation
 search
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
16
Attributi
Stati e proprietà categorizzati in:
 Widget Attributes
 Live Region Attributes
 Drag-and-Drop Attributes
 Relationship Attributes
prefisso aria-
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
17
Widget Attributes
•
aria-autocomplete
•
aria-pressed (state)
•
aria-checked (state)
•
aria-readonly
•
aria-disabled (state)
•
aria-required
•
aria-expanded (state)
•
aria-selected (state)
•
aria-haspopup
•
aria-sort
•
aria-hidden (state)
•
aria-valuemax
•
aria-invalid (state)
•
aria-valuemin
•
aria-label
•
aria-valuenow
•
aria-level
•
aria-valuetext
•
aria-multiline
•
aria-multiselectable
•
aria-orientation
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
18
Live Region
Regioni che possono essere aggiornate mentre l’utente non è
posizionato su di esse (non hanno il focus)
Es. Log di chat, punteggi dinamici (risultati votazioni, gare sportive,
parametri ambientali, quotazioni di borsa, cambiavalute, etc)
 WAI-ARIA consente di identificare le live region e specificare come
veicolare le informazioni all’utente:
 aria-live, aria-relevant, aria-atomic, aria-busy
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
19
Live Region Attributes
 aria-live: policy di comunicazione
 off | polite | assertive
 aria-atomic: granularità dell’informazione
 true | false
 aria-relevant: cosa annunciare
 additions | removals | text | all | additions text
 aria-busy (state): consistenza aggiornamento
 true | false
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
20
Drag-and-Drop Attributes
– problemi di utilizzo del mouse
– screen reader permette di simulare un click,
trascinamento e rilascio
 aria-grabbed (stato): elemento "afferrato"
true|false|undefined
 aria-dropeffect: funzioni eseguite quando
l’oggetto è rilasciato sul target
 copy|move|link|execute|popup|none
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
21
Relationship Attributes
 aria-activedescendant
 aria-controls
 aria-describedby
 aria-flowto
 aria-labelledby
 aria-owns
 aria-posinset
 aria-setsize
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
22
Focus
Tutti gli elementi interattivi devono poter ricevere il
focus
Attributo tabindex: ordine di navigazione via tab
quando un widget riceve il focus:
 frecce, spazio, enter, consentono di navigare le opzioni del widget,
cambiare il suo stato, o innescare una funzione applicativa associata
al widget
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
23
Navigazione via tastiera
tab/shift+tab: muove il focus avanti/indietro
tabindex=0: ordine nel documento
tabindex>0: in ordine crescente
tabindex<0: non sono inseriti nella sequenza via TAB ma possono
ricevere il focus da tastiera via script o con la proprietà ariaactivedescendant
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
24
Esempi
Toolbar
 http://test.cita.illinois.edu/aria/toolbar/toolbar1.php
Gioco del tris
 http://test.cita.illinois.edu/aria/draganddrop/draganddrop3.php
Live Region
 http://test.cita.illinois.edu/aria/live/live1.php
Landmark
 http://test.cita.illinois.edu/aria/nav/nav1.html
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
25
Esempi
WAI – ARIA 1.0 Authoring Practices
Guida per capire ed implementare RIA accessibili
Approcci per utilizzare ruoli ed attributi WAI-ARIA per
rendere gli oggetti, la navigazione ed i comportamenti
accessibili
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
26
Riferimenti
Accessible Rich Internet Applications (WAI-ARIA) 1.0
http://www.w3.org/TR/wai-aria/
Illinois Center for Information Technology and Web Accessibility
http://test.cita.illinois.edu/aria/
WAI-ARIA (Rich Applications)

FAQ

WAI-ARIA 1.0

Primer

Authoring Practices
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
27
Grazie
Domande?
HANDImatica 2014 – Workshop Accessibilità digitale: WAI ARIA e HTML5 – 28 novembre 2014
28