SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
© 2013 IBM Corporation
ARIA Techniques for
Accessible Web Forms
Aidan Tierney – Senior Accessibility Consultant
IBM Interactive | Toronto
May 28, 2013
2 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
3 © 2013 IBM Corporation
Session Objectives
Goals of session:
• Understand how ARIA can enhance forms
• See and hear how ARIA improves the screen reader experience
• Become familiar with ARIA syntax
• Discussion of your ARIA experiences, and best practices
Intended audience:
• Familiar with HTML, JavaScript and jQuery
• Understand basic HTML form accessibility techniques, e.g. label, fieldset
• Front-end web developers, testers, web content managers
4 © 2013 IBM Corporation
What is ARIA?
WAI-ARIA
• W3C Web Accessibility Initiative - Accessible Rich Internet Applications
• A specification that provides a means of describing roles, states, and
properties for custom widgets so that they are recognizable and usable by
assistive technology users
• Dynamic content and advanced user interface controls developed with Ajax,
HTML, JavaScript, and related technologies
• http://www.w3.org/WAI/intro/
ARIA and forms
• Although primary use is complex widgets, ARIA can enhance basic and
complex forms
• Forms are a good place to start when learning ARIA
• ARIA usually used in conjunction with JavaScript, jQuery, AJAX
5 © 2013 IBM Corporation
Session Topics
Enhancing a basic form with ARIA
• Required fields
• Input-level instructions and expected data format
• Form validation and error messaging
Hide/show content
• Open/close form sections
• Disabled and read-only elements
Modals
Simulating form elements
• Creating form inputs without HTML form elements
6 © 2013 IBM Corporation
ARIA Syntax
Enhancing a basic form with ARIA
• aria-required
• aria-describedby
• aria-invalid
• role=“alert”
Hide/show content
• aria-controls, aria-expanded
• aria-hidden, aria-disabled, aria-readonly
Modals
• role=“dialog”, role=“alertdialog”
• aria-label, aria-labelledby
Simulating form elements
• role=“checkbox”, role=“radio”, aria-checked
7 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
8 © 2013 IBM Corporation
Basic Form Demo – Before & After ARIA
Before
• As we go through the form with the NVDA screen reader can
you notice what could be improved?
• What information appears on the screen but is not read by the
screen reader?
After
• In the ARIA-enhanced version what information does the
screen reader speak that was missing from the first version?
9 © 2013 IBM Corporation
Required Fields
aria-required
<label for="lastName">Last Name*</label>
<input id="lastName" type="text" aria-
required="true">
10 © 2013 IBM Corporation
Input-level Instructions and Expected Data Format
aria-describedby
<label for="emailAddress">Email Address*</label>
<input id="emailAddress" type="email"
aria-describedby="emailFormat" aria-required="true">
<div class="instruction" id="emailFormat">
Example: name@domain.com</div>
11 © 2013 IBM Corporation
Validation and Error Messaging
aria-invalid and role="alert"
<label for="emailAddress">Email Address*</label>
<input id="emailAddress" type="email"
aria-describedby="emailFormat" aria-required="true"
aria-invalid="true">
<div role="alert"><label for="emailAddress"
class="error">Please enter a valid email
address</label></div>
<div class="instruction" id="emailFormat">
Example:name@domain.com</div>
12 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
13 © 2013 IBM Corporation
Hide/Show – Closed State
aria-controls, aria-expanded
<button aria-controls="more-questions" id="button1">
<span>Show</span> Additional Questions</button>
<div id="more-questions" aria-expanded="false"
tabindex="-1" aria-labelledby="more-questions-label"
style="display: none;">
...</div>
Code for hidden state:
14 © 2013 IBM Corporation
Hide/Show – Expanded State
aria-controls, aria-expanded
<button aria-controls="more-questions" id="button1">
<span>Hide</span> Additional Questions</button>
<div id="more-questions" aria-expanded=“true" tabindex="-1"
aria-labelledby="more-questions-label" style="display: block;">
...</div>
Code for expanded state:
15 © 2013 IBM Corporation
Hiding Content from Screen Readers
display:none
• Screen readers do not read content with CSS display:none
aria-hidden
• Only need aria-hidden when hiding content specifically from assistive
technology (AT)
• Example: off-screen content that temporarily needs to be hidden from AT
OpenAjax Alliance Accessibility Example: Hide/Show
http://oaa-accessibility.org/example/20/
HTML5 Accessibility Chops: hidden and aria-hidden
http://blog.paciellogroup.com/2012/05/html5-accessibility-chops-hidden-and-aria-hidden/
16 © 2013 IBM Corporation
Disabled and Read-Only Elements
aria-disabled
• Indicates that the element is perceivable but disabled, so it is not
editable or otherwise operable
• Disabled elements might not receive focus from the tab order
• Value is not submitted with the form
<input id="firstName" name="firstName" type="text"
value="Jane" disabled aria-disabled="true">
aria-readonly
• Indicates that the element is not editable, but is otherwise operable
• Typically a text element
• User can read but not set the value of the widget
• Should not restrict navigation to the element or its focusable
descendants
• Examples include:
– A form element which represents a constant.
– The result of a calculation such as a shopping cart total.
<input id="lastName" name="lastName" type="text"
value="Doe" readonly aria-readonly="true">
17 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
18 © 2013 IBM Corporation
Modals
Modals often used for forms
 dialog role is used when the user is
expected to provide data
 alertdialog role is used to announce the
contents of a dialog to the user.
Accessible jQuery-ui Components Example
http://hanshillen.github.io/jqtest/#goto_dialog
Mozilla Developer Network:
Using the dialog role
19 © 2013 IBM Corporation
Modals – ARIA syntax
role="alertdialog" and aria-labelledby
<div role="alertdialog" aria-labelledby="dialog1Title“
aria-describedby="dialog1Desc">
<h2 id="dialog1Title">Your personal details were
successfully updated</h2>
<p id="dialog1Desc">You can change your details at any
time in the user account section.</p>
<button>Close</button></div>
aria-label
<div role="dialog" aria-label="Password Confirmation"
aria-describedby="dialog1Desc">
20 © 2013 IBM Corporation
Modals – Focus
Focus Management
• Modal needs to retain focus until the dialog is closed or dismissed
• Should not be possible for keyboard-only users to accidentally tab into the
background content
• User should either explicitly dismiss the dialog (for example, selecting
"Cancel" or pressing ESC) or close it by taking a positive action, such as
selecting "OK" or "Submit".
• When the dialog is displayed, focus should be placed on an active element
within the dialog
• Focus management handled through JavaScript, not through ARIA
WAI-ARIA Dialogs by Gez Lemon
http://juicystudio.com/article/custom-built_dialogs.php
21 © 2013 IBM Corporation
Modals – Example
Accessible jQuery-ui Components Example
http://hanshillen.github.io/jqtest/#goto_dialog
<div tabindex="-1"
role="dialog" aria-labelledby=
"ui-dialog-title-sampleDialog">
<div tabindex="0" role="button"
title="Move dialog">
<span id="ui-dialog-title-
sampleDialog">Profile
Information</span>...
22 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
23 © 2013 IBM Corporation
Simulating HTML Form Elements
HTML inputs vs. custom-made widgets
• <input>, <select> and other form elements already
communicate info about role, state, and properties
• When making form elements out of <div> <li> and/or images
information about role, state and properties needs can be added
with ARIA
OpenAjax Alliance :Checkboxes using
IMG elements for visual state
http://oaa-accessibility.org/example/5/
24 © 2013 IBM Corporation
Simulating Checkboxes
role="checkbox" and aria-checked
<h3 id="cond">Sandwich Condiments</h3>
…
<li aria-describedby="cond desc2" aria-checked="true"
tabindex="0" role="checkbox">
<img role="presentation" src="http://www.oaa-
accessibility.org/media/examples/images/checkbox-checked-
black.png">Tomato</li>
…
<div class="offscreen" id="desc2">These organically grown
beef steak tomatoes are vine ripened.</div>
25 © 2013 IBM Corporation
Simulating Radio Buttons and Fieldset
role="radio", role="radiogroup"
<h3 id="rg2_label">Drink Options</h3>
<ul aria-labelledby="rg2_label"
role="radiogroup"
class="radiogroup" id="rg2">
<li aria-checked="false"
role="radio" tabindex="0" id="r6">
<img src="/images/radio-
unchecked.gif"
role="presentation">Water</li>
<li aria-checked="false"
role="radio" tabindex="-1"
id="r7"><img src="/images/radio-
unchecked.gif"
role="presentation">Tea</li>
…
</ul>
OpenAjax Alliance :Radiogroup
http://oaa-
accessibility.org/example/28/
26 © 2013 IBM Corporation
ARIA Techniques for Accessible Web Forms
Introduction
Enhancing basic forms
Hide/show content
Modals
Simulating form elements
Resources and Q&A
27 © 2013 IBM Corporation
ARIA Resources
OpenAjax Alliance Accessibility Examples
http://oaa-accessibility.org/examples
Accessible jQuery-ui Components Demonstration
http://hanshillen.github.io/jqtest
WAI-ARIA Reference: roles, states and properties
http://www.w3.org/TR/wai-aria/roles
HTML5 Validator
http://html5.validator.nu/
WAI-ARIA 1.0 Authoring Practices
http://www.w3.org/TR/wai-aria-practices
Opera: Introduction to WAI ARIA
http://dev.opera.com/articles/view/introduction-to-wai-aria
28 © 2013 IBM Corporation
Questions?
Aidan Tierney
IBM Interactive | Toronto
atierney@ca.ibm.com
www.ibminteractive.com
IBM Accessibility
Human Ability and Accessibility Center
www.ibm.com/able

Más contenido relacionado

La actualidad más candente

HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Henny Swan
 
corePHP Usability Accessibility by Steven Pignataro
corePHP Usability Accessibility by Steven PignatarocorePHP Usability Accessibility by Steven Pignataro
corePHP Usability Accessibility by Steven PignataroJohn Coonen
 
Accessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoAccessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoGeorge Zamfir
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsMark Roden
 
Web and Mobile App Accessibility Testing
Web and Mobile App Accessibility TestingWeb and Mobile App Accessibility Testing
Web and Mobile App Accessibility TestingTechWell
 
Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Henny Swan
 
Usability Testing for People w/ Disabilities
Usability Testing for People w/ DisabilitiesUsability Testing for People w/ Disabilities
Usability Testing for People w/ DisabilitiesInteractive Accessibility
 
Briding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingBriding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingTom Deryckere
 
iPhone possibilities
iPhone possibilitiesiPhone possibilities
iPhone possibilitiesJesse Wynants
 
Introduction to mobile accessibility - AccessU 2013
Introduction to mobile accessibility - AccessU 2013Introduction to mobile accessibility - AccessU 2013
Introduction to mobile accessibility - AccessU 2013Henny Swan
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applicationsdominion
 
Building Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware ApplicationsBuilding Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware Applicationscjolif
 
iOS and Android accessibility APIs (AccessU 2017)
iOS and Android accessibility APIs (AccessU 2017)iOS and Android accessibility APIs (AccessU 2017)
iOS and Android accessibility APIs (AccessU 2017)Jon Gibbins
 
UXPA2019: Voice User Interface Design for Customer Support: Design guidance ...
UXPA2019: Voice User Interface Design for Customer Support:  Design guidance ...UXPA2019: Voice User Interface Design for Customer Support:  Design guidance ...
UXPA2019: Voice User Interface Design for Customer Support: Design guidance ...UXPA International
 
Using Ajax to improve your user experience at Web Directions South 2009
Using Ajax to improve your user experience at Web Directions South 2009Using Ajax to improve your user experience at Web Directions South 2009
Using Ajax to improve your user experience at Web Directions South 2009Peak Usability
 

La actualidad más candente (20)

HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)
 
Mobile web development
Mobile web development Mobile web development
Mobile web development
 
corePHP Usability Accessibility by Steven Pignataro
corePHP Usability Accessibility by Steven PignatarocorePHP Usability Accessibility by Steven Pignataro
corePHP Usability Accessibility by Steven Pignataro
 
Accessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoAccessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_Toronto
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
 
Web and Mobile App Accessibility Testing
Web and Mobile App Accessibility TestingWeb and Mobile App Accessibility Testing
Web and Mobile App Accessibility Testing
 
Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015
 
Usability Testing for People w/ Disabilities
Usability Testing for People w/ DisabilitiesUsability Testing for People w/ Disabilities
Usability Testing for People w/ Disabilities
 
Briding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingBriding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishing
 
iPhone possibilities
iPhone possibilitiesiPhone possibilities
iPhone possibilities
 
Introduction to mobile accessibility - AccessU 2013
Introduction to mobile accessibility - AccessU 2013Introduction to mobile accessibility - AccessU 2013
Introduction to mobile accessibility - AccessU 2013
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applications
 
Building Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware ApplicationsBuilding Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware Applications
 
iOS and Android accessibility APIs (AccessU 2017)
iOS and Android accessibility APIs (AccessU 2017)iOS and Android accessibility APIs (AccessU 2017)
iOS and Android accessibility APIs (AccessU 2017)
 
UXPA2019: Voice User Interface Design for Customer Support: Design guidance ...
UXPA2019: Voice User Interface Design for Customer Support:  Design guidance ...UXPA2019: Voice User Interface Design for Customer Support:  Design guidance ...
UXPA2019: Voice User Interface Design for Customer Support: Design guidance ...
 
chapter2
chapter2chapter2
chapter2
 
The Mobile Ecosystem
The Mobile EcosystemThe Mobile Ecosystem
The Mobile Ecosystem
 
Using Ajax to improve your user experience at Web Directions South 2009
Using Ajax to improve your user experience at Web Directions South 2009Using Ajax to improve your user experience at Web Directions South 2009
Using Ajax to improve your user experience at Web Directions South 2009
 
Mobile Accessibility on the Move
Mobile Accessibility on the MoveMobile Accessibility on the Move
Mobile Accessibility on the Move
 

Destacado

Accessibility Support Baseline: Balancing User Needs Against Test Effort
Accessibility Support Baseline: Balancing User Needs Against Test EffortAccessibility Support Baseline: Balancing User Needs Against Test Effort
Accessibility Support Baseline: Balancing User Needs Against Test EffortAidan Tierney
 
iOS VoiceOver Testing Techniques & Procedures for Absolute Beginners
iOS VoiceOver Testing Techniques & Procedures for Absolute BeginnersiOS VoiceOver Testing Techniques & Procedures for Absolute Beginners
iOS VoiceOver Testing Techniques & Procedures for Absolute BeginnersAidan Tierney
 
The 7 minute accessibility assessment and app rating system
The 7 minute accessibility assessment and app rating systemThe 7 minute accessibility assessment and app rating system
The 7 minute accessibility assessment and app rating systemAidan Tierney
 
Accessibility microinteractions: better user experience, happier developers
Accessibility microinteractions: better user experience, happier developersAccessibility microinteractions: better user experience, happier developers
Accessibility microinteractions: better user experience, happier developersAidan Tierney
 
iOS Accessibility Testing with VoiceOver - A Crash Course
iOS Accessibility Testing with VoiceOver - A Crash CourseiOS Accessibility Testing with VoiceOver - A Crash Course
iOS Accessibility Testing with VoiceOver - A Crash CourseAidan Tierney
 
CSUN 2017 Success Criteria: Dependencies and Prioritization
CSUN 2017 Success Criteria: Dependencies and PrioritizationCSUN 2017 Success Criteria: Dependencies and Prioritization
CSUN 2017 Success Criteria: Dependencies and PrioritizationSean Kelly
 
CSUN 2017 VPATs For Business or Measure
CSUN 2017 VPATs For Business or MeasureCSUN 2017 VPATs For Business or Measure
CSUN 2017 VPATs For Business or MeasureTed Gies
 
Mystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessibleMystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessibleTed Drake
 
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...Ted Drake
 
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017Bill Tyler
 
Reusable acceptance criteria and test cases for accessibility
Reusable acceptance criteria and test cases for accessibilityReusable acceptance criteria and test cases for accessibility
Reusable acceptance criteria and test cases for accessibilityIntopia
 
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...November Samnee
 
Original Access U 2013 - 508 Refresh
Original Access U 2013 - 508 RefreshOriginal Access U 2013 - 508 Refresh
Original Access U 2013 - 508 RefreshBarry Johnson
 
Accessible reading solutions from mainstream publishers
Accessible reading solutions from mainstream publishersAccessible reading solutions from mainstream publishers
Accessible reading solutions from mainstream publishersDAISY Consortium
 
Ubiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityUbiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityTed Drake
 
Preparing the enterprise for 508 refresh, ibm csun2017
Preparing the enterprise for 508 refresh, ibm csun2017Preparing the enterprise for 508 refresh, ibm csun2017
Preparing the enterprise for 508 refresh, ibm csun2017Michael Gower
 
2017 CSUN Color Contrast
2017 CSUN Color Contrast2017 CSUN Color Contrast
2017 CSUN Color ContrastCrystal Baker
 
Android Accessibility - The missing manual
Android Accessibility - The missing manualAndroid Accessibility - The missing manual
Android Accessibility - The missing manualTed Drake
 
2017 CSUN The Art of Language in Accessibility
2017 CSUN The Art of Language in Accessibility2017 CSUN The Art of Language in Accessibility
2017 CSUN The Art of Language in AccessibilityCrystal Baker
 

Destacado (20)

Accessibility Support Baseline: Balancing User Needs Against Test Effort
Accessibility Support Baseline: Balancing User Needs Against Test EffortAccessibility Support Baseline: Balancing User Needs Against Test Effort
Accessibility Support Baseline: Balancing User Needs Against Test Effort
 
iOS VoiceOver Testing Techniques & Procedures for Absolute Beginners
iOS VoiceOver Testing Techniques & Procedures for Absolute BeginnersiOS VoiceOver Testing Techniques & Procedures for Absolute Beginners
iOS VoiceOver Testing Techniques & Procedures for Absolute Beginners
 
The 7 minute accessibility assessment and app rating system
The 7 minute accessibility assessment and app rating systemThe 7 minute accessibility assessment and app rating system
The 7 minute accessibility assessment and app rating system
 
Accessibility microinteractions: better user experience, happier developers
Accessibility microinteractions: better user experience, happier developersAccessibility microinteractions: better user experience, happier developers
Accessibility microinteractions: better user experience, happier developers
 
iOS Accessibility Testing with VoiceOver - A Crash Course
iOS Accessibility Testing with VoiceOver - A Crash CourseiOS Accessibility Testing with VoiceOver - A Crash Course
iOS Accessibility Testing with VoiceOver - A Crash Course
 
CSUN 2017 Success Criteria: Dependencies and Prioritization
CSUN 2017 Success Criteria: Dependencies and PrioritizationCSUN 2017 Success Criteria: Dependencies and Prioritization
CSUN 2017 Success Criteria: Dependencies and Prioritization
 
CSUN 2017 VPATs For Business or Measure
CSUN 2017 VPATs For Business or MeasureCSUN 2017 VPATs For Business or Measure
CSUN 2017 VPATs For Business or Measure
 
Mystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessibleMystery Meat 2.0 – Making hidden mobile interactions accessible
Mystery Meat 2.0 – Making hidden mobile interactions accessible
 
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
Accessibility metrics Accessibility Data Metrics and Reporting – Industry Bes...
 
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017
Rethinking Accessibility: Role-Based Analysis of WCAG 2.0 - CSUN 2017
 
Reusable acceptance criteria and test cases for accessibility
Reusable acceptance criteria and test cases for accessibilityReusable acceptance criteria and test cases for accessibility
Reusable acceptance criteria and test cases for accessibility
 
Html5 aria-css-ibm-csun-2016
Html5 aria-css-ibm-csun-2016Html5 aria-css-ibm-csun-2016
Html5 aria-css-ibm-csun-2016
 
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...
Designing with Accessibility in Mind: How IA and Visual Design Decisions Impa...
 
Original Access U 2013 - 508 Refresh
Original Access U 2013 - 508 RefreshOriginal Access U 2013 - 508 Refresh
Original Access U 2013 - 508 Refresh
 
Accessible reading solutions from mainstream publishers
Accessible reading solutions from mainstream publishersAccessible reading solutions from mainstream publishers
Accessible reading solutions from mainstream publishers
 
Ubiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityUbiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and Accessibility
 
Preparing the enterprise for 508 refresh, ibm csun2017
Preparing the enterprise for 508 refresh, ibm csun2017Preparing the enterprise for 508 refresh, ibm csun2017
Preparing the enterprise for 508 refresh, ibm csun2017
 
2017 CSUN Color Contrast
2017 CSUN Color Contrast2017 CSUN Color Contrast
2017 CSUN Color Contrast
 
Android Accessibility - The missing manual
Android Accessibility - The missing manualAndroid Accessibility - The missing manual
Android Accessibility - The missing manual
 
2017 CSUN The Art of Language in Accessibility
2017 CSUN The Art of Language in Accessibility2017 CSUN The Art of Language in Accessibility
2017 CSUN The Art of Language in Accessibility
 

Similar a ARIA Techniques for Accessible Web Forms

AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...
AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...
AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...Kate Walser
 
CSUN The ARIA Technology Stack Browsers and Screen Readers
CSUN The ARIA Technology Stack Browsers and Screen ReadersCSUN The ARIA Technology Stack Browsers and Screen Readers
CSUN The ARIA Technology Stack Browsers and Screen ReadersEduardo Meza-Etienne
 
Web accessibility workshop 4
Web accessibility workshop 4Web accessibility workshop 4
Web accessibility workshop 4Vladimir Tomberg
 
Testing For Web Accessibility
Testing For Web AccessibilityTesting For Web Accessibility
Testing For Web AccessibilityHagai Asaban
 
Vincent Burckhardt - Exending Connections with OpenSocial Gadgets
Vincent Burckhardt - Exending Connections with OpenSocial GadgetsVincent Burckhardt - Exending Connections with OpenSocial Gadgets
Vincent Burckhardt - Exending Connections with OpenSocial GadgetsLetsConnect
 
Open social gadgets in ibm connections
Open social gadgets in ibm connectionsOpen social gadgets in ibm connections
Open social gadgets in ibm connectionsVincent Burckhardt
 
Show & tell - A more accessible accordion
Show & tell - A more accessible accordionShow & tell - A more accessible accordion
Show & tell - A more accessible accordionDan Dineen
 
Surviving Dev Frameworks 2019
Surviving Dev Frameworks 2019Surviving Dev Frameworks 2019
Surviving Dev Frameworks 2019Kate Walser
 
APEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep DiveAPEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep DiveJohnSnyders
 
JMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialJMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialRyan Baxter
 
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connections Developers
 
ARIA_11_12_Practical_Perspective.pptx
ARIA_11_12_Practical_Perspective.pptxARIA_11_12_Practical_Perspective.pptx
ARIA_11_12_Practical_Perspective.pptxMarkSteadman7
 
jQuery: Accessibility, Mobile und Responsive
jQuery: Accessibility, Mobile und ResponsivejQuery: Accessibility, Mobile und Responsive
jQuery: Accessibility, Mobile und ResponsivePeter Rozek
 
Accessible & Usable Web Forms. Your How To Guide!
Accessible & Usable Web Forms. Your How To Guide!Accessible & Usable Web Forms. Your How To Guide!
Accessible & Usable Web Forms. Your How To Guide!Rabab Gomaa
 
JMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialJMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialRyan Baxter
 
How HTML5 and WAI-ARIA Can Improve Virtual Space of Universities
How HTML5 and WAI-ARIA Can Improve Virtual Space of UniversitiesHow HTML5 and WAI-ARIA Can Improve Virtual Space of Universities
How HTML5 and WAI-ARIA Can Improve Virtual Space of UniversitiesRadek Pavlíček
 
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...Patrick Lauke
 
WSO2 Gadget Server v1.0 Technical Briefing
WSO2 Gadget Server v1.0 Technical BriefingWSO2 Gadget Server v1.0 Technical Briefing
WSO2 Gadget Server v1.0 Technical BriefingWSO2
 
Web Accessibility Overview
Web Accessibility OverviewWeb Accessibility Overview
Web Accessibility OverviewWill Jayroe
 

Similar a ARIA Techniques for Accessible Web Forms (20)

wtf is aria landmarks
wtf is aria landmarkswtf is aria landmarks
wtf is aria landmarks
 
AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...
AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...
AccessU 2018 - Surviving Dev Frameworks: Lessons Learned with WordPress, Drup...
 
CSUN The ARIA Technology Stack Browsers and Screen Readers
CSUN The ARIA Technology Stack Browsers and Screen ReadersCSUN The ARIA Technology Stack Browsers and Screen Readers
CSUN The ARIA Technology Stack Browsers and Screen Readers
 
Web accessibility workshop 4
Web accessibility workshop 4Web accessibility workshop 4
Web accessibility workshop 4
 
Testing For Web Accessibility
Testing For Web AccessibilityTesting For Web Accessibility
Testing For Web Accessibility
 
Vincent Burckhardt - Exending Connections with OpenSocial Gadgets
Vincent Burckhardt - Exending Connections with OpenSocial GadgetsVincent Burckhardt - Exending Connections with OpenSocial Gadgets
Vincent Burckhardt - Exending Connections with OpenSocial Gadgets
 
Open social gadgets in ibm connections
Open social gadgets in ibm connectionsOpen social gadgets in ibm connections
Open social gadgets in ibm connections
 
Show & tell - A more accessible accordion
Show & tell - A more accessible accordionShow & tell - A more accessible accordion
Show & tell - A more accessible accordion
 
Surviving Dev Frameworks 2019
Surviving Dev Frameworks 2019Surviving Dev Frameworks 2019
Surviving Dev Frameworks 2019
 
APEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep DiveAPEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep Dive
 
JMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialJMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocial
 
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
 
ARIA_11_12_Practical_Perspective.pptx
ARIA_11_12_Practical_Perspective.pptxARIA_11_12_Practical_Perspective.pptx
ARIA_11_12_Practical_Perspective.pptx
 
jQuery: Accessibility, Mobile und Responsive
jQuery: Accessibility, Mobile und ResponsivejQuery: Accessibility, Mobile und Responsive
jQuery: Accessibility, Mobile und Responsive
 
Accessible & Usable Web Forms. Your How To Guide!
Accessible & Usable Web Forms. Your How To Guide!Accessible & Usable Web Forms. Your How To Guide!
Accessible & Usable Web Forms. Your How To Guide!
 
JMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialJMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocial
 
How HTML5 and WAI-ARIA Can Improve Virtual Space of Universities
How HTML5 and WAI-ARIA Can Improve Virtual Space of UniversitiesHow HTML5 and WAI-ARIA Can Improve Virtual Space of Universities
How HTML5 and WAI-ARIA Can Improve Virtual Space of Universities
 
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...
WAI-ARIA - an introduction to accessible rich internet applications (1 day wo...
 
WSO2 Gadget Server v1.0 Technical Briefing
WSO2 Gadget Server v1.0 Technical BriefingWSO2 Gadget Server v1.0 Technical Briefing
WSO2 Gadget Server v1.0 Technical Briefing
 
Web Accessibility Overview
Web Accessibility OverviewWeb Accessibility Overview
Web Accessibility Overview
 

Último

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 

Último (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 

ARIA Techniques for Accessible Web Forms

  • 1. © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Aidan Tierney – Senior Accessibility Consultant IBM Interactive | Toronto May 28, 2013
  • 2. 2 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 3. 3 © 2013 IBM Corporation Session Objectives Goals of session: • Understand how ARIA can enhance forms • See and hear how ARIA improves the screen reader experience • Become familiar with ARIA syntax • Discussion of your ARIA experiences, and best practices Intended audience: • Familiar with HTML, JavaScript and jQuery • Understand basic HTML form accessibility techniques, e.g. label, fieldset • Front-end web developers, testers, web content managers
  • 4. 4 © 2013 IBM Corporation What is ARIA? WAI-ARIA • W3C Web Accessibility Initiative - Accessible Rich Internet Applications • A specification that provides a means of describing roles, states, and properties for custom widgets so that they are recognizable and usable by assistive technology users • Dynamic content and advanced user interface controls developed with Ajax, HTML, JavaScript, and related technologies • http://www.w3.org/WAI/intro/ ARIA and forms • Although primary use is complex widgets, ARIA can enhance basic and complex forms • Forms are a good place to start when learning ARIA • ARIA usually used in conjunction with JavaScript, jQuery, AJAX
  • 5. 5 © 2013 IBM Corporation Session Topics Enhancing a basic form with ARIA • Required fields • Input-level instructions and expected data format • Form validation and error messaging Hide/show content • Open/close form sections • Disabled and read-only elements Modals Simulating form elements • Creating form inputs without HTML form elements
  • 6. 6 © 2013 IBM Corporation ARIA Syntax Enhancing a basic form with ARIA • aria-required • aria-describedby • aria-invalid • role=“alert” Hide/show content • aria-controls, aria-expanded • aria-hidden, aria-disabled, aria-readonly Modals • role=“dialog”, role=“alertdialog” • aria-label, aria-labelledby Simulating form elements • role=“checkbox”, role=“radio”, aria-checked
  • 7. 7 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 8. 8 © 2013 IBM Corporation Basic Form Demo – Before & After ARIA Before • As we go through the form with the NVDA screen reader can you notice what could be improved? • What information appears on the screen but is not read by the screen reader? After • In the ARIA-enhanced version what information does the screen reader speak that was missing from the first version?
  • 9. 9 © 2013 IBM Corporation Required Fields aria-required <label for="lastName">Last Name*</label> <input id="lastName" type="text" aria- required="true">
  • 10. 10 © 2013 IBM Corporation Input-level Instructions and Expected Data Format aria-describedby <label for="emailAddress">Email Address*</label> <input id="emailAddress" type="email" aria-describedby="emailFormat" aria-required="true"> <div class="instruction" id="emailFormat"> Example: name@domain.com</div>
  • 11. 11 © 2013 IBM Corporation Validation and Error Messaging aria-invalid and role="alert" <label for="emailAddress">Email Address*</label> <input id="emailAddress" type="email" aria-describedby="emailFormat" aria-required="true" aria-invalid="true"> <div role="alert"><label for="emailAddress" class="error">Please enter a valid email address</label></div> <div class="instruction" id="emailFormat"> Example:name@domain.com</div>
  • 12. 12 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 13. 13 © 2013 IBM Corporation Hide/Show – Closed State aria-controls, aria-expanded <button aria-controls="more-questions" id="button1"> <span>Show</span> Additional Questions</button> <div id="more-questions" aria-expanded="false" tabindex="-1" aria-labelledby="more-questions-label" style="display: none;"> ...</div> Code for hidden state:
  • 14. 14 © 2013 IBM Corporation Hide/Show – Expanded State aria-controls, aria-expanded <button aria-controls="more-questions" id="button1"> <span>Hide</span> Additional Questions</button> <div id="more-questions" aria-expanded=“true" tabindex="-1" aria-labelledby="more-questions-label" style="display: block;"> ...</div> Code for expanded state:
  • 15. 15 © 2013 IBM Corporation Hiding Content from Screen Readers display:none • Screen readers do not read content with CSS display:none aria-hidden • Only need aria-hidden when hiding content specifically from assistive technology (AT) • Example: off-screen content that temporarily needs to be hidden from AT OpenAjax Alliance Accessibility Example: Hide/Show http://oaa-accessibility.org/example/20/ HTML5 Accessibility Chops: hidden and aria-hidden http://blog.paciellogroup.com/2012/05/html5-accessibility-chops-hidden-and-aria-hidden/
  • 16. 16 © 2013 IBM Corporation Disabled and Read-Only Elements aria-disabled • Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable • Disabled elements might not receive focus from the tab order • Value is not submitted with the form <input id="firstName" name="firstName" type="text" value="Jane" disabled aria-disabled="true"> aria-readonly • Indicates that the element is not editable, but is otherwise operable • Typically a text element • User can read but not set the value of the widget • Should not restrict navigation to the element or its focusable descendants • Examples include: – A form element which represents a constant. – The result of a calculation such as a shopping cart total. <input id="lastName" name="lastName" type="text" value="Doe" readonly aria-readonly="true">
  • 17. 17 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 18. 18 © 2013 IBM Corporation Modals Modals often used for forms  dialog role is used when the user is expected to provide data  alertdialog role is used to announce the contents of a dialog to the user. Accessible jQuery-ui Components Example http://hanshillen.github.io/jqtest/#goto_dialog Mozilla Developer Network: Using the dialog role
  • 19. 19 © 2013 IBM Corporation Modals – ARIA syntax role="alertdialog" and aria-labelledby <div role="alertdialog" aria-labelledby="dialog1Title“ aria-describedby="dialog1Desc"> <h2 id="dialog1Title">Your personal details were successfully updated</h2> <p id="dialog1Desc">You can change your details at any time in the user account section.</p> <button>Close</button></div> aria-label <div role="dialog" aria-label="Password Confirmation" aria-describedby="dialog1Desc">
  • 20. 20 © 2013 IBM Corporation Modals – Focus Focus Management • Modal needs to retain focus until the dialog is closed or dismissed • Should not be possible for keyboard-only users to accidentally tab into the background content • User should either explicitly dismiss the dialog (for example, selecting "Cancel" or pressing ESC) or close it by taking a positive action, such as selecting "OK" or "Submit". • When the dialog is displayed, focus should be placed on an active element within the dialog • Focus management handled through JavaScript, not through ARIA WAI-ARIA Dialogs by Gez Lemon http://juicystudio.com/article/custom-built_dialogs.php
  • 21. 21 © 2013 IBM Corporation Modals – Example Accessible jQuery-ui Components Example http://hanshillen.github.io/jqtest/#goto_dialog <div tabindex="-1" role="dialog" aria-labelledby= "ui-dialog-title-sampleDialog"> <div tabindex="0" role="button" title="Move dialog"> <span id="ui-dialog-title- sampleDialog">Profile Information</span>...
  • 22. 22 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 23. 23 © 2013 IBM Corporation Simulating HTML Form Elements HTML inputs vs. custom-made widgets • <input>, <select> and other form elements already communicate info about role, state, and properties • When making form elements out of <div> <li> and/or images information about role, state and properties needs can be added with ARIA OpenAjax Alliance :Checkboxes using IMG elements for visual state http://oaa-accessibility.org/example/5/
  • 24. 24 © 2013 IBM Corporation Simulating Checkboxes role="checkbox" and aria-checked <h3 id="cond">Sandwich Condiments</h3> … <li aria-describedby="cond desc2" aria-checked="true" tabindex="0" role="checkbox"> <img role="presentation" src="http://www.oaa- accessibility.org/media/examples/images/checkbox-checked- black.png">Tomato</li> … <div class="offscreen" id="desc2">These organically grown beef steak tomatoes are vine ripened.</div>
  • 25. 25 © 2013 IBM Corporation Simulating Radio Buttons and Fieldset role="radio", role="radiogroup" <h3 id="rg2_label">Drink Options</h3> <ul aria-labelledby="rg2_label" role="radiogroup" class="radiogroup" id="rg2"> <li aria-checked="false" role="radio" tabindex="0" id="r6"> <img src="/images/radio- unchecked.gif" role="presentation">Water</li> <li aria-checked="false" role="radio" tabindex="-1" id="r7"><img src="/images/radio- unchecked.gif" role="presentation">Tea</li> … </ul> OpenAjax Alliance :Radiogroup http://oaa- accessibility.org/example/28/
  • 26. 26 © 2013 IBM Corporation ARIA Techniques for Accessible Web Forms Introduction Enhancing basic forms Hide/show content Modals Simulating form elements Resources and Q&A
  • 27. 27 © 2013 IBM Corporation ARIA Resources OpenAjax Alliance Accessibility Examples http://oaa-accessibility.org/examples Accessible jQuery-ui Components Demonstration http://hanshillen.github.io/jqtest WAI-ARIA Reference: roles, states and properties http://www.w3.org/TR/wai-aria/roles HTML5 Validator http://html5.validator.nu/ WAI-ARIA 1.0 Authoring Practices http://www.w3.org/TR/wai-aria-practices Opera: Introduction to WAI ARIA http://dev.opera.com/articles/view/introduction-to-wai-aria
  • 28. 28 © 2013 IBM Corporation Questions? Aidan Tierney IBM Interactive | Toronto atierney@ca.ibm.com www.ibminteractive.com IBM Accessibility Human Ability and Accessibility Center www.ibm.com/able