ARIA + HTML5 Steve Faulkner & Hans Hillen. DIVING IN TO SOME HTML5 Details/summary Dialog Spin button slider ARIA rules HTML/ARIA validation Tools.

Slides:



Advertisements
Similar presentations
JQuery UI A11Y Tips, Tricks and Pitfalls jQUery UI ARIA Hackathon 2011 Hans Hillen, TPG.
Advertisements

Introduction to HTML & CSS
Everett Zufelt Tech Lead / Accessibility Accessibility of Custom User Interface Components Using WAI-ARIA.
Accessibility, Joomla! Markup languages and you
Steve Faulkner & Hans Hillen The Paciello Group.   Examples:
WCAG 2.0 top ten checkpoints Ten popular area of focus for compliance and accessibility.
® Copyright 2008 Adobe Systems Incorporated. All rights reserved. ADOBE® ACCESSIBILITY AT Access to Flash and PDF Matt May 25 Mar 2010 Featuring.
Web 2.0 Accessibility Section 508 Coordinators Training Conference Rich Schwerdtfeger DE, SWG Accessibility Strategy and Architecture Chair: W3C WAI-ARIA.
Antranig Basman, CARET, University of Cambridge Aaron Zeckoski, CARET, University of Cambridge Josh Ryan, Arizona State University Colin Clark, Adaptive.
© by Pearson Education, Inc. All Rights Reserved.
Chapter 1 Getting Started With Dreamweaver. Explore the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
Dhananjay Bhole, Coordinator, Accessibility Research Group, Department of Education and Extension, University of Pune.
Hans Hillen (TPG) Steve Faulkner (TPG) 02 / 25 / 13 Accessibility of HTML5 and Rich Internet Applications - CSUN
ARIA Support on Mobile Browsers
Section 508 and NASA Section 508 and NASA Session 4: Software Applications and Operating Systems Presentation to Ames Research Center November 2011 Antonio.
 jQuery Mobile An Introduction. What is jQuery Mobile  A framework built on top of jQuery, used for creating mobile web applications  Designed to make.
Development of Accessible E- documents and Programs for Visually Impaired Using pc without visual control.
Scripted, Tab Accessible Tree Control Hierarchical view of data via tree control. Keyboard Navigation from initially closed tree to view above with focus.
LEARN THE QUICK AND EASY WAY! VISUAL QUICKSTART GUIDE HTML and CSS 8th Edition Chapter 2: Working with Webpage Files.
Accessibility for Rich Internet Applications: Colin Clark, Fluid Project Technical Lead, Adaptive Technology Resource Centre Techniques & Toolkits.
An Introduction to WAI-ARIA Dan Jackson Web Team Leader City University London.
© 2008 IBM Corporation Emerging Internet Technologies Real World Accessibility with ARIA Becky Gibson Web Accessibility Architect.
Redefining Disability Mobile Accessibility Testing By Priti Rohra Head Accessibility Testing BarrierBreak Technologies.
Alternative Views of the Web Jon Gunderson, Ph.D. Division of Rehabilitation-Education Services University of Illinois at Urbana/Champaign.
Java Application Accessibility Awareness Lawrence Najjar.
Development of Accessible E-documents and Programs for the Visually Impaired WAI-ARIA (V2011)
ARIA + HTML5 Steve Faulkner & Hans Hillen The Paciello Group.
14 Chapter 11: Designing the User Interface. 14 Systems Analysis and Design in a Changing World, 3rd Edition 2 Identifying and Classifying Inputs and.
Hans Hillen (TPG) Steve Faulkner (TPG) Karl Groves (TPG) Billy Gregory (TPG)
Accessibility of HTML5 and Rich Internet Applications (Part 2) Hans Hillen Steve Faulkner.
Accessible DHTML Simon Bates David Bolter ATRC
LIST OF WEB ACCESSIBILITY TOOLS GRANT MUKAI. WEB BROWSERS.
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part. Android Boot Camp.
9 August 2012 Museum of Contemporary Art, Sydney Roger Hudson Web Usability Arts, Media and Technology at the MCA.
Accessible DOM scripting with ARIA Léonie Watson
Functional Accessibility Evaluation of Web 2.0 Applications Testing Jon Gunderson, Ph.D University of Illinois.
XHTML By Trevor Adams. Topics Covered XHTML eXtensible HyperText Mark-up Language The beginning – HTML Web Standards Concept and syntax Elements (tags)
+ A11y assessment Lisa Liskovoi. + WCAG POUR some accessibility sugar on me Perceivable – Can I see it? Hear it? Feel it? Operable – Can I scroll it?
Steve Faulkner & Hans Hillen & Karl Groves & Billy Gregory The Paciello Group.
Use CSS to Implement a Reusable Design Selecting a Dreamweaver CSS Starter Layout is the easiest way to create a page with a CSS layout You can access.
Dive into Mobile Guidelines for Testing Native, Hybrid, and Web Apps Susan Hewitt, Accessibility Consultant, Deque Systems Jeanine Lineback, Accessibility.
Chapter 1 Getting Started With Dreamweaver. Exploring the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
ARIA Support on Mobile Browsers Jonathan Avila Chief Accessibility Officer, SSB BART Group.
Modal Dialogs. What is a Modal Dialog? A modal dialog is a separate window that remains in focus until it is closed by the user. During this time the.
Week 8.  Form controls  Accessibility with ARIA.
An Introduction to the Accessibility API on Windows David MacDonald President, CanAdapt Solutions Inc.
Chapter 27 Getting “Web-ified” (Web Applications) Clearly Visual Basic: Programming with Visual Basic nd Edition.
Positioning Objects with CSS and Tables
May 6, 2009 Browser Compatibility Testing Definition It is a non functional type of testing where web based applications are tested on various browsers(IE.
Reach More People with Zoom & Speech Built Right into Websites.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
The Disability Resource Center Web Accessibility Assessment for Everyone.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Becky Gibson Sr. Technical Staff Member IBM Emerging HTML5 Accessibility.
Powerpoint Templates Page 1 iPhone combines smart phone capabilities with graphical interface iPhone Application Development.
| Mobile Accessibility Development Making an Accessible App Usable Scott McCormack.
1 Using jQuery JavaScript & jQuery the missing manual (Second Edition)
Web Programming Java Script-Introduction. What is Javascript? JavaScript is a scripting language using for the Web. JavaScript is a programming language.
WaveMaker Visual AJAX Studio 4.0 Training Styling your application.
Testing Native Mobile Apps
Testing for Accessibility with Common Screen Readers
How to Improve Your #A11y Testing
Keyboard Accessibility
Strategy for Native Mobile App Testing Methodology iOS vs Android
Sharon Trerise & Kara Patten Graphics from webaim.org
Web Accessibility Testing 101: A Checklist for Beginners
Program and Graphical User Interface Design
Reaching more customers with accessible Metro style apps using HTML5
What Designers Need to Know about Accessibility (A11y)
International University of Japan
Presentation transcript:

ARIA + HTML5 Steve Faulkner & Hans Hillen

DIVING IN TO SOME HTML5 Details/summary Dialog Spin button slider ARIA rules HTML/ARIA validation Tools

HTML5 Getting simple

HTM5 DEMO – DETAILS/SUMMARY label Some content simple

HTM5 DEMO – DETAILS/SUMMARY Supports!

HTM5 DEMO – DETAILS/SUMMARY What we get

HTM5 DEMO – DETAILS/SUMMARY What we get

HTML5 DEMO – DETAILS/SUMMARY Filling Gaps

HTM5 DEMO – DETAILS/SUMMARY label Some content

HTM5 DEMO – DETAILS/SUMMARYDEMO – DETAILS/SUMMARY

HTM5 DEMO – DIALOG Creating a modal dialog that works with keyboard and prevents users from accessing ‘disabled’ content is the holy grail….modal dialog

HTM5 DEMO – DIALOGDEMO – DIALOG What we get for free Focus moves to modal dialog when it is displayed Focus stays in modal dialog until it is dismissed Content not in the modal dialog is really disabled ESC key dismisses the dialog = role=dialog

HTM5 DEMO – DIALOGDEMO – DIALOG What we need to add Accessible name to dialog Currently when the dialog is dismissed focus moves to the when it needs to move to control that triggered dialog display Can be polyfilled using scripting

HTM5 DEMO – DIALOGDEMO – DIALOG The good oil on implementing custom dialogs Juicy Studio - Custom-Built Dialogs The Incredible Accessible Modal Dialog WAI-ARIA design pattern – modal dialog

HTM5 DEMO – INPUT TYPE=NUMBERINPUT TYPE=NUMBER What we get Correct role and value information Keyboard operable

HTM5 DEMO – INPUT TYPE=RANGEINPUT TYPE=RANGE

HTM5 DEMO – INPUT TYPE=RANGEINPUT TYPE=RANGE What we get for free EVERYTHING \o/

ARIA There are conformance rules: ARIA in HTML

HTML 5 SPECIFICATION

ARIA VALIDATION Use of ARIA in HTML<5 is non conforming and probably always will be. It doesn’t make any difference, it still works The easiest method is to use the HTML5 DOCTYPE with ARIA markup and validate using the W3C Nu Markup Checker.HTML5 DOCTYPEW3C Nu Markup

1 ST RULE OF ARIA USE If you can use a native HTML element or attribute with the semantics and behaviour you require already built in, instead of re-purposing an element and adding an ARIA role, state or property to make it accessible, then do so.

1 ST RULE OF ARIA USE Under what circumstances may this not be possible? If the visual design constraints rule out the use of a particular native element, because the element cannot be styled as required. If the feature is not currently available in HTML.not currently available in HTML If the feature is available in HTML but it is not implemented or it is implemented, but accessibility support is not. accessibility support

CUSTOM CONTROL ACCESSIBLE DEVELOPMENT CHECKLIST: Custom Control Design Considerations design considerationdescriptionYes/No focusable Can you get to the control via the keyboard? Refer to Providing Keyboard Focus Providing Keyboard Focus operable Can you use the control with the keyboard? Refer to Keyboard Navigation Keyboard Navigation expected operation Can you use the standard keys for the control type to operate it. Refer to ARIA Widget Design PatternsARIA Widget Design Patterns clear indication of focus Can you easily see it when the control has focus? Refer to Visible Focus (WCAG2) Visible Focus label The control has a text label that is exposed as an accessible name in accessibility APIsaccessible nameaccessibility APIs role The control has an appropriate role exposed in accessibility APIs accessibility APIs states and properties The control has any UI states and properties that it has exposed in accessibility APIsaccessibility APIs color contrast The control label/description/icon is perceivable/usable for low vision users (Use a color contrast checker.)color contrast checker high contrast mode The control is perceivable/usable when High Contrast Mode is enabled (e.g. Windows HC mode)Windows HC mode

2 ND RULE OF ARIA USE Do not change native semantics, unless you really have to. For example: Developer wants to build a heading that's a button. Do not do this: heading button Do this: heading button Or better, do this: heading button Note: it is OK to use native HTML elements, that have similar semantics to ARIA roles used, for fallback. For example using HTML list elements for the skeleton of an ARIA enabled, scripted tree widget.list elementstree widget

3 RD RULE OF ARIA USE All interactive ARIA controls must be usable with the keyboard. If you create a widget that a user can click or tap or drag or drop or slide or scroll a user must also be able navigate to the widget and perform an equivalent action using the keyboard. All interactive widgets must be scripted to respond to standard key strokes or key stroke combinations where applicable. For example if using role=button the element must be able to recieve focus and a user just be able to activate the action associated with the element using both the enter and the space key. Refer to the keyboard and structural navigation and design patterns sections of the WAI-ARIA 1.0 Authoring Practiceskeyboard and structural navigationdesign patternsWAI-ARIA 1.0 Authoring Practices

4 TH RULE OF ARIA USE Do not use role="presentation" or aria-hidden="true" on a focusable element. Using either of these on a focusable element will result in some users focusing on 'nothing'. Do not do this: press me Do not do this: press me

FirefoxInternet ExplorerSafariChrome Windows, LinuxWindowsOSX + IOS Android + IOS + Chrome OS Zoom Keyboard CSS Zoom Keyboard CSS Zoom Keyboard Touch Zoom Keyboard Touch ACCESSIBILITY TESTING TOOLS Browsers + Keyboard

FirefoxInternet ExplorerSafariChrome Windows OSX + IOS Android + IOS + Chrome OS shift+alt+print screen shift+alt+print screen Universal Access IOS OSX Contrast Extension ACCESSIBILITY TESTING TOOLS Browsers + High Contrast Mode

FirefoxInternet ExplorerSafariChrome Windows, LinuxWindowsOSX + IOS Android + IOS + Chrome OS Web Developer DOM inspector Firebug Developer tools (F12) Developer tools (OSX) Developer tools (OSX + Chrome OS) ACCESSIBILITY TESTING TOOLS Developer tools

ACCESSIBILITY TESTING TOOLS Firefox – DOM InspectorDOM Inspector

ACCESSIBILITY TESTING TOOLS Internet Explorer – Web Accessibility ToolbarWeb Accessibility Toolbar

ACCESSIBILITY TESTING TOOLS aViewer

ACCESSIBILITY TESTING TOOLS NVDANVDA – A free open source screen reader for Windows NVDA Screen Reader command key quick referencecommand key quick reference

TOOLS Aviewer (free desktop application for windows ) Aviewer Dom Inspector (free Firefox extension) Dom Inspector Inspect.exe (free desktop application for windows available as part of the Windows SDK) Inspect.exe Accprobe (free open source cross platform app) Accprobe Accessibility Inspector (free Mac app) Accessibility Inspector Java ferret (free cross platform app) Java ferret Accerciser (free gnome desktop app) Accerciser

IF YOU ONLY LEAVE WITH ONE TAKE AWAY

THANK YOU