SlideShare a Scribd company logo
Selfish Accessibility
Presented by Adrian Roselli for Inclusive Design 24 #ID24
#ID24
About Adrian Roselli
• Co-written four books.
• Technical editor
for two books.
• Written over fifty
articles, most recently
for .net Magazine and
Web Standards Sherpa.
Great bedtime reading!
#ID24
About Adrian Roselli
• Member of W3C HTML Working Group, W3C
Accessibility Task Force, five W3C Community
Groups.
• Building for the web since 1994.
• Founder, owner at Algonquin
(aHealthTech.com).
• Learn more at AdrianRoselli.com.
• Avoid on Twitter @aardrian.
I warned you.
#ID24
What is a11y?
• A numeronym for “accessibility”:
• The first and last letter (accessibility),
• The number of characters omitted (a11y).
• Prominent on Twitter (character restrictions):
• #a11y
• Examples:
• l10n → localization
• i18n → internationalization
Ain’t language funsies?
#ID24
Accessibility Gets No Respect
In fairness, Sherwin Williams needs to come up with a lot of color names...
“Cyberspace” (gray)
“Online” (blue)
“Lime Rickey” (green)
#ID24
Accessibility Gets No Respect
…however I think the team could have done better than this.
#ID24
What We’ll Cover
• Yay Statistics!
• Be Selfish
• Some Techniques
• Basic Tests
• Technical Bits
• Resources
Work with me, people.
#ID24
Yay Statistics!
1 of 5 sections.
#ID24
Any Disability
• In the United States:
• 10.4% aged 21-64 years old,
• 25% aged 65-74 years old,
• 50% aged 75+.
• Includes:
• Visual
• Hearing
• Mobility
• Cognitive
http://www.who.int/mediacentre/factsheets/fs282/en/
http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012
#ID24
Vision Impairments
• 285 million worldwide:
• 39 million are blind,
• 246 million have low vision,
• 82% of people living with blindness are aged 50
and above.
• 1.8% of Americans aged 21-64.
• 4.0% of Americans aged 65-74.
• 9.8% of Americans aged 75+.
http://www.who.int/mediacentre/factsheets/fs282/en/
http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012
#ID24
Hearing Impairments
• 360 million people worldwide have disabling
hearing loss.
• 17% (36 million) of American adults report
some degree of hearing loss:
• 18% aged 45-64 years old,
• 30% aged 65-74 years old,
• 47% aged 75+ years old.
http://www.who.int/mediacentre/factsheets/fs300/en/
https://www.nidcd.nih.gov/health/statistics/Pages/quick.aspx
#ID24
Mobility Impairments
• In the United States:
• 5.5% aged 21-64 years old.
• 15.6% aged 65-74 years old.
• 32.9% aged 75+.
http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012
#ID24
Cognitive Impairments
• Dyslexia,
• Dyscalculia,
• Memory issues,
• Distractions (ADD, ADHD),
• In the United States:
• 4.3% aged 21-64 years old.
• 5.4% aged 65-74 years old.
• 14.4% aged 75+.
http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012&subButton=Get+HTML
#ID24
Be Selfish
2 of 5 sections.
#ID24
WebAIM’s Hierarchy for Motivating
Accessibility Change
http://webaim.org/blog/motivating-accessibility-change/
#ID24
My Hierarchy for Motivating
Accessibility Change
Is better, no?
#ID24
Getting Older
• Affects (nearly) everyone,
• Carries risks and side effects,
• Is not for the young.
I’m still experimenting with it.
#ID24
Rising Damp on Flickr.
#ID24
Darren Baldwin on Flickr.
#ID24
Accidents
• Broken limbs,
• Eye injuries,
• Hearing injuries,
• Head trauma.
All of these have happened to me, multiple times.
#ID24
Rev Stan on Flickr.
#ID24
Let Ideas Compete on Flickr.
#ID24
Fluffy Steve on Flickr.
#ID24
Paul Townsend on Flickr.
#ID24
But I’m Invincible!
• Multi-tasking,
• Sunlight,
• Eating at your desk,
• No headphones handy,
• Content is not in your native language.
The sun is trying to kill me.
#ID24
https://twitter.com/aardrian/statuses/388733408576159744
#ID24
Mariëlle on Flickr.
#ID24
barockschloss on Flickr.
#ID24
Seb on Flickr.
#ID24
A.Davy on Flickr.
#ID24
Steve Rhodes on Flickr.
#ID24
SuperFantastic on Flickr.
#ID24
World Bank Photo Collection on Flickr.
#ID24
Lars Kristian Flem on Flickr.
#ID24
Tech Support
• Think of your family!
• Think of your time spent helping them!
• Think of the wasted holidays!
This is why we hate the holidays.
#ID24
Robert Simmons on Flickr.
#ID24
The Message
• Supporting accessibility now helps to serve
future you.
Do or do not.
#ID24
The Message
• Supporting accessibility now helps to serve
future you.
• Supporting accessibility now helps injured
you, encumbered you.
There is no try.
#ID24
The Message
• Supporting accessibility now helps to serve
future you.
• Supporting accessibility now helps injured
you, encumbered you.
• Getting younger developers to buy in helps
future you – if you teach them well.
Always pass on what you have learned.
#ID24
Checklist
• Accessibility is not a checklist.
http://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/
#ID24
Stairamp
Dean Bouchard on Flickrhttp://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/
#ID24
Checklist
• Accessibility is not a checklist.
• Accessibility is an ongoing process.
https://twitter.com/vavroom/status/571092086365261824
#ID24
Maintenance
Nicolas Steenhouthttps://twitter.com/vavroom/status/571092086365261824
“Wheelchair ramp at
pharmacy not only
hasn’t been cleared of
snow but has 2 potted
trees to ensure nobody
can pass.”
#ID24
Some Techniques
3 of 5 sections.
#ID24
User Stories
• Components:
• User,
• Outcome,
• Value.
• Writing:
• As user, I want outcome.
• As user, I want outcome so that value.
• In order to get value as user, I want outcome.
How to Write User Stories for Web Accessibility
#ID24
Selfish User Stories
• As a user on a sun-lit patio, I want to be able
to read the content and see the controls.
Add beer and as a user I may have trouble focusing.
#ID24
Selfish User Stories
• As a user in bed with a sleeping spouse, I want
to watch a training video in silence so that I
can get caught up at work.
As a user who doesn’t want to get punched for having slacked off at work.
#ID24
Selfish User Stories
• In order to click links as a user with no elbow
room in coach class with a tiny trackpad, I
want click areas to be large enough and
adequately spaced.
As a user in coach class who also paid too much for the drink he’s spilling on his keyboard.
#ID24
Selfish User Stories
• As a user distracted by the TV, I want clear
headings and labels so that I don’t lose my
place.
As a user who really should be finishing his work in the office.
#ID24
User Stories
• Physical Impairment
• As a keyboard-only user, I want to be able to use
the entire application.
This includes seeing what has focus and not getting lost in off-screen elements.
#ID24
User Stories
• Physical Impairment
• As a keyboard-only user, I want to be able to use
the entire application.
• As a keyboard-only user, I want to navigate a
product list with the tab key so that I can find the
right option.
Arrow keys are acceptable as well, making sure that it is clear to the user.
#ID24
User Stories
• Physical Impairment
• As a keyboard-only user, I want to be able to use
the entire application.
• As a keyboard-only user, I want to navigate a
product list with the tab key so that I can find the
right option.
• In order to click links as a limited-mobility user, I
want click areas to be large enough and
adequately spaced.
Else I may click the wrong item and have to hit the back button, which can be time consuming.
#ID24
User Stories
• Visual Impairment
• As a color blind user, I want to be able to see links
in page content.
Underlines are important, but users also like to know what they clicked already.
#ID24
User Stories
• Visual Impairment
• As a color blind user, I want to be able to see links
in page content.
• As a low-vision user, I want to zoom the page so
that I can read the content.
Without the text overlapping itself or every other item on the page.
#ID24
User Stories
• Visual Impairment
• As a color blind user, I want to be able to see links
in page content.
• As a low-vision user, I want to zoom the page so
that I can read the content.
• In order to use the site as a blind user, I want to
use a screen reader to navigate.
Good headings, clear structure, landmark roles to jump around the page.
#ID24
User Stories
• Hearing Impairment
• As a low-hearing user, I want to be able to access
transcripts.
From a clear link, not through some acrobatics to find them.
#ID24
User Stories
• Hearing Impairment
• As a low-hearing user, I want to be able to access
transcripts.
• As a low-hearing user, I want access to closed
captions so that I can use training videos.
Timed to match the video is important.
#ID24
User Stories
• Hearing Impairment
• As a low-hearing user, I want to be able to access
transcripts.
• As a low-hearing user, I want access to closed
captions so that I can use training videos.
• In order to participate in a webinar as a deaf user,
I want real-time captioning or transcripts.
This can be tricky, since you’ll need to have a resource typing in real-time.
#ID24
User Stories
• Cognitive Impairment
• As a user with a vestibular disorder, I want to be
able to disable parallax scrolling.
But you don’t just use it for no reason, right?
#ID24
User Stories
• Cognitive Impairment
• As a user with a vestibular disorder, I want to be
able to disable parallax scrolling.
• As a user with dyscalculia, I want distinct number
fields for each block of digits in a credit card
number so that I can purchase a product.
You can auto-detect card type. Do the same for expiration date.
#ID24
User Stories
• Cognitive Impairment
• As a user with a vestibular disorder, I want to be
able to disable parallax scrolling.
• As a user with dyscalculia, I want distinct number
fields for each block of digits in a credit card
number so that I can purchase a product.
• In order to not get confused on pages with long
text passages as a user with dyslexia, I want
control over text size, spacing, and/or alignment.
At the very least, turn of justified text.
#ID24
Personas
Book Excerpt: A Web for Everyone, by Sarah Horton, Whitney Quesenbery
#ID24
Personas
Adrian
• Works when he should be relaxing, relaxes
when he should be working.
• Lives between motorcycles.
• Works late at night with the TV on.
• Uses sub-titles in Netflix.
• Keeps all screens as dark as possible.
That photo is from official ID.
#ID24
Basic Tests
4 of 5 sections.
#ID24
Click on Field Labels
• When you click label text next to a text box,
does the cursor appear in the field?
• When you click label text next to a radio /
checkbox, does it get toggled?
• When you click label text next to a select
menu, does it get focus?
http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/
#ID24
#ID24
Unplug Your Mouse
• Turn off your trackpad, stick, trackball, etc.
• Can you interact with all controls (links,
menus, forms) with only the keyboard?
• Can you tell which item has focus?
• Does the tab order match your expectation?
http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/
#ID24
#ID24
Turn off Images
• Can you still make sense of the page?
• Is content missing?
• Can you still use the site?
• Is your alt text useful?
http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/
#ID24
#ID24
#ID24
Turn on High Contrast Mode
• Windows only.
• Left ALT + left SHIFT + PRINT SCREEN
• Background images and colors are replaced.
• Text colors are replaced.
• Does this make your site unusable?
http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/
http://blog.adrianroselli.com/2012/08/css-background-images-high-contrast-mode.html
#ID24
#ID24
#ID24
Turn off CSS
• Does important content or functionality
disappear?
• Do error messages or other items that rely on
visual cues make sense?
• Is content still in a reasonable order?
• Do any styles (colors, text effects, etc.)
remain?
http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/
#ID24
#ID24
Test for Colorblindness/Contrast
• Is there enough contrast?
• Are hyperlinks, menus, etc. still visible?
• Tools:
• Chrome Color Contrast Analyzer
• Lea Verou’s Contrast Ratio
• WebAIM Color Contrast Checker
• CheckMyColours.com
http://www.inpixelitrust.fr/blog/en/tips-create-accessible-color-palette/
http://alistapart.com/blog/post/easy-color-contrast-testing
#ID24
Protanopia
#ID24
Deuteranopia
#ID24
Tritanopia
#ID24
Look for Captions & Transcripts
• Do video/audio clips have text alternatives?
• Are links to closed-captions or transcripts built
into the player or separate text links?
• Is there an audio description available?
• Tools:
• Media Access Australia YouTube captioning tutorial,
Vimeo captioning tutorial,
• Tiffany Brown’s WebVTT tutorial,
• DIY Resources for Closed Captioning and Transcription
from 3 Play Media.
http://webaim.org/techniques/captions/
#ID24
https://www.youtube.com/watch?v=zCqN_cCLnnk
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
• Do links to downloads provide helpful info?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
• Do links to downloads provide helpful info?
• Are you using pagination links?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
• Do links to downloads provide helpful info?
• Are you using pagination links?
• Are your links underlined (or otherwise obvious)?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
• Do links to downloads provide helpful info?
• Are you using pagination links?
• Are your links underlined (or otherwise obvious)?
• Is there alt text for image links?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
Hyperlinks!
• Is there any “click here,” “more,” “link to…”?
• Are you using all-caps, URLs, emoticons?
• Do you warn before opening new windows?
• Do links to downloads provide helpful info?
• Are you using pagination links?
• Are your links underlined (or otherwise obvious)?
• Is there alt text for image links?
• Is the link text consistent?
http://www.sitepoint.com/15-rules-making-accessible-links/
#ID24
http://blog.adrianroselli.com/2014/03/i-dont-care-what-google-did-just-keep.html
#ID24
Technical Bits
5 of 5 sections.
#ID24
WAI-ARIA
• Web Accessibility Initiative – Accessible Rich
Internet Applications.
• Adds accessibility information to HTML
elements.
• Can be used with prior versions of HTML.
• WAI-ARIA 1.0 published March 20, 2014.
http://www.w3.org/TR/wai-aria/
#ID24
Four Five Rules of ARIA Use
1. If you can use a native HTML5 element with
semantics/behavior already built in, then do
so, instead of repurposing another element.
RT this! https://twitter.com/aardrian/status/454249142387081219
#ID24
Four Five Rules of ARIA Use
2. Do not change native semantics. Unless you
really have to (no <h1> with a role="button",
for example).
RT this! https://twitter.com/aardrian/status/454249201564532737
#ID24
Four Five Rules of ARIA Use
3. All interactive ARIA controls must be usable
with the keyboard — keyboard users must be
able to perform equivalent actions.
RT this! https://twitter.com/aardrian/status/454249253284483072
#ID24
Four Five Rules of ARIA Use
4. Do not use role="presentation" or aria-
hidden="true" on a focusable element. If you
do so, some users will never be able to focus.
RT this! https://twitter.com/aardrian/status/454249297408585729
#ID24
Four Five Rules of ARIA Use
5. All interactive elements must have
an accessible name (in progress). This may
come from a visible (text on a button) or
invisible (alt text on an image) property.
As of May 19: http://rawgit.com/w3c/aria-in-html/master/index.html#fifth-rule-of-aria-use
Accessible name: http://www.w3.org/TR/wai-aria/terms#def_accessible_name
#ID24
HTML/ARIA Don’t
• <div onclick="DoThing();">Do a thing.</div>
I see this all the time.
#ID24
HTML/ARIA Don’t
• <div onclick="DoThing();" tabindex="0">Do a
thing.</div>
I see this a bunch, too.
#ID24
HTML/ARIA Don’t
• <div onclick="DoThing();" tabindex="0"
onkeypress="DoThing();">Do a thing.</div>
Excluded bits like if(event.keyCode==32||event.keyCode==13)DoThing();
#ID24
HTML/ARIA Don’t
• <div onclick="DoThing();" tabindex="0"
onkeypress="DoThing();" role="button">Do a
thing.</div>
ARIA roles to the rescue! Er…
#ID24
HTML/ARIA Do
• <button onclick="DoThing();"
onkeypress="DoThing();">Do a
thing.</button>
Or just start with the right element. http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/
#ID24
WAI-ARIA
• Accessibility Lipstick on a Usability Pig
• By Jared Smith:
http://webaim.org/blog/accessibility-lipstick-on-
a-usability-pig/
• What is WAI-ARIA, what does it do for me, and
what not?
• By Marco Zehe:
http://www.marcozehe.de/2014/03/27/what-is-
wai-aria-what-does-it-do-for-me-and-what-not/
ARIA ALL THE THINGS!
#ID24
HTML5 Elements
• Sectioning elements already have accessibility
built in. Use them.
• <header>
• <nav>
• <main> (one per page)
• <aside>
• <footer>
• <form> (a search form)
This stuff is baked in!
#ID24
HTML5/ARIA Landmarks
• They don’t always have support in assistive
technologies (AT), so use roles as well.
• <header role="banner"> (once per page)
• <nav role="navigation">
• <main role="main"> (one per page)
• <aside role="complementary">
• <footer role="contentinfo"> (once per page)
• <form role="search">
http://www.w3.org/WAI/GL/wiki/Using_ARIA_landmarks_to_identify_regions_of_a_page
#ID24
Generic Desktop Layout
<header role="banner">
<nav role="navigation">
<aside role="complementary">
<form role="search">
<footer role="contentinfo">
<main role="main">
#ID24
Generic
“Mobile”
Layout
<header role="banner">
<nav role="navigation">
<aside role="complementary">
<form role="search">
<footer role="contentinfo">
<main role="main">
“Mobile” often means narrow screen
in RWD, as well as this context.
#ID24
HTML5 Headings
• Use normal heading ranks to convey
document structure.
• Don’t skip; go in order.
<h1>
<h2>
<h3>
<h4>
<h5>
<h6>
Fun fact: NCSA Mosaic 1.0 had provisions for an <h7>: http://blog.adrianroselli.com/2013/04/ncsa-moscaic-turns-20.html
#ID24
HTML5 Headings
• Document Outline Algorithm…
• Is a myth,
• Isn’t implemented in any browsers,
• Should not be relied upon.
• Don’t be fooled by articles claiming otherwise.
• Spec has been updated.
• No SEO benefit for one over other.
http://blog.adrianroselli.com/2013/12/the-truth-about-truth-about-multiple-h1.html
#ID24
The New <div>itis
• <section>orrhea, <article> abuse.
• These map to regions in page navigation order
(role="region").
• Can overwhelm users of AT.
• If it doesn’t get an <h#>, don’t use it.
• If it shouldn’t be in the document outline,
don’t use it.
http://www.w3.org/TR/html5/sections.html#the-section-element
http://www.w3.org/TR/html5/sections.html#the-article-element
#ID24
Focus Styles
http://blog.adrianroselli.com/2014/06/keep-focus-outline.html
#ID24
Focus Styles
• Necessary for keyboard use,
• Use in conjunction with :hover,
• Check libraries for :focus styles.
It’s built in, just don’t mess with it.
#ID24
Focus Styles
https://twitter.com/aardrian/statuses/489837817129099266
#ID24
Alternative Text
• Which is correct?
• <img src="fox.png" alt="Photo of a fox reading
aloud from a book.">
http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html
#ID24
Alternative Text
• Which is correct?
• <img src="fox.png" alt="Photo of a fox reading
aloud from a book.">
• <img src="fox.png" title="Photo of a fox reading
aloud from a book.">
http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html
#ID24
Alternative Text
• Which is correct?
• <img src="fox.png" alt="Photo of a fox reading
aloud from a book.">
• <img src="fox.png" title="Photo of a fox reading
aloud from a book.">
• <img src="fox.png" aria-label="Photo of a fox
reading aloud from a book.">
http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html
#ID24
Alternative Text
• Which is correct?
• <img src="fox.png" alt="Photo of a fox reading
aloud from a book.">
• <img src="fox.png" title="Photo of a fox reading
aloud from a book.">
• <img src="fox.png" aria-label="Photo of a fox
reading aloud from a book.">
• <img src="fox.png" aria-labelledby="FoxPic"> <p
id="FoxPic">Photo of a fox reading aloud from a
book.</p>
http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html
#ID24
Alternative Text
• Use alt.
• Longdesc links to more verbose alternative.
http://www.w3.org/blog/2014/03/wcag-techniques-for-image-text-alternatives/
#ID24
Alternative Text Decision Tree
http://www.4syllables.com.au/2010/12/text-alternatives-decision-tree/
http://dev.w3.org/html5/alt-techniques/#tree
1. What role
does image
play?
2. Does it
present
new info?
3. What
type of
info?
Informative Yes
alt=""
or
<a href="foo"><img alt="">Link</a>
alt=""
or
Use CSS
alt="descriptive identification"
or
alt="short label" + caption
PurelyDecorative
Sensory
No
alt="label for link"
alt=“short alternative"
or
alt="short label" + caption
alt="short label + location of long alternative"
or
long text alternative on same or linked page
Long/Complex
Short/Simple
#ID24
Resources
Unless you had questions, which you didn’t else you would have asked by now.
#ID24
Resources
• Web Accessibility and Older People:
Meeting the Needs of Ageing Web Users
http://www.w3.org/WAI/older-users/Overview.php
• Easy Checks - A First Review of Web Accessibility
http://www.w3.org/WAI/eval/preliminary
• How People with Disabilities Use the Web:
Overview
http://www.w3.org/WAI/intro/people-use-
web/Overview.html
In addition to the gems I’ve sprinkled throughout.
#ID24
Resources
• 2.11 ARIA Role, State, and Property Quick
Reference
http://www.w3.org/TR/aria-in-html/#aria-role-
state-and-property-quick-reference
• 2.12 Definitions of States and Properties (all
aria-* attributes)
http://www.w3.org/TR/aria-in-html/#definitions-of-
states-and-properties-all-aria--attributes
In addition to the gems I’ve sprinkled throughout.
#ID24
Resources
• a11yTips
http://dboudreau.tumblr.com/
• Designing For The Elderly: Ways Older People Use
Digital Technology Differently
http://www.smashingmagazine.com/2015/02/05/designing-
digital-technology-for-the-elderly/
• How to Write User Stories for Web Accessibility
http://www.interactiveaccessibility.com/blog/how-write-
user-stories-accessibility-requirements
• Book Excerpt: A Web for Everyone
http://uxmag.com/articles/book-excerpt-a-web-for-everyone
In addition to the gems I’ve sprinkled throughout.
#ID24
Presented by Adrian Roselli for Inclusive Design 24 #ID24
My thanks and apologies.
Slides from this talk will be available at rosel.li/ID24
Selfish Accessibility
#ID24

More Related Content

Selfish Accessibility for Global Accessibility Awareness Day

  • 1. Selfish Accessibility Presented by Adrian Roselli for Inclusive Design 24 #ID24 #ID24
  • 2. About Adrian Roselli • Co-written four books. • Technical editor for two books. • Written over fifty articles, most recently for .net Magazine and Web Standards Sherpa. Great bedtime reading! #ID24
  • 3. About Adrian Roselli • Member of W3C HTML Working Group, W3C Accessibility Task Force, five W3C Community Groups. • Building for the web since 1994. • Founder, owner at Algonquin (aHealthTech.com). • Learn more at AdrianRoselli.com. • Avoid on Twitter @aardrian. I warned you. #ID24
  • 4. What is a11y? • A numeronym for “accessibility”: • The first and last letter (accessibility), • The number of characters omitted (a11y). • Prominent on Twitter (character restrictions): • #a11y • Examples: • l10n → localization • i18n → internationalization Ain’t language funsies? #ID24
  • 5. Accessibility Gets No Respect In fairness, Sherwin Williams needs to come up with a lot of color names... “Cyberspace” (gray) “Online” (blue) “Lime Rickey” (green) #ID24
  • 6. Accessibility Gets No Respect …however I think the team could have done better than this. #ID24
  • 7. What We’ll Cover • Yay Statistics! • Be Selfish • Some Techniques • Basic Tests • Technical Bits • Resources Work with me, people. #ID24
  • 8. Yay Statistics! 1 of 5 sections. #ID24
  • 9. Any Disability • In the United States: • 10.4% aged 21-64 years old, • 25% aged 65-74 years old, • 50% aged 75+. • Includes: • Visual • Hearing • Mobility • Cognitive http://www.who.int/mediacentre/factsheets/fs282/en/ http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012 #ID24
  • 10. Vision Impairments • 285 million worldwide: • 39 million are blind, • 246 million have low vision, • 82% of people living with blindness are aged 50 and above. • 1.8% of Americans aged 21-64. • 4.0% of Americans aged 65-74. • 9.8% of Americans aged 75+. http://www.who.int/mediacentre/factsheets/fs282/en/ http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012 #ID24
  • 11. Hearing Impairments • 360 million people worldwide have disabling hearing loss. • 17% (36 million) of American adults report some degree of hearing loss: • 18% aged 45-64 years old, • 30% aged 65-74 years old, • 47% aged 75+ years old. http://www.who.int/mediacentre/factsheets/fs300/en/ https://www.nidcd.nih.gov/health/statistics/Pages/quick.aspx #ID24
  • 12. Mobility Impairments • In the United States: • 5.5% aged 21-64 years old. • 15.6% aged 65-74 years old. • 32.9% aged 75+. http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012 #ID24
  • 13. Cognitive Impairments • Dyslexia, • Dyscalculia, • Memory issues, • Distractions (ADD, ADHD), • In the United States: • 4.3% aged 21-64 years old. • 5.4% aged 65-74 years old. • 14.4% aged 75+. http://www.disabilitystatistics.org/reports/2012/English/HTML/report2012.cfm?fips=2000000&html_year=2012&subButton=Get+HTML #ID24
  • 14. Be Selfish 2 of 5 sections. #ID24
  • 15. WebAIM’s Hierarchy for Motivating Accessibility Change http://webaim.org/blog/motivating-accessibility-change/ #ID24
  • 16. My Hierarchy for Motivating Accessibility Change Is better, no? #ID24
  • 17. Getting Older • Affects (nearly) everyone, • Carries risks and side effects, • Is not for the young. I’m still experimenting with it. #ID24
  • 18. Rising Damp on Flickr. #ID24
  • 19. Darren Baldwin on Flickr. #ID24
  • 20. Accidents • Broken limbs, • Eye injuries, • Hearing injuries, • Head trauma. All of these have happened to me, multiple times. #ID24
  • 21. Rev Stan on Flickr. #ID24
  • 22. Let Ideas Compete on Flickr. #ID24
  • 23. Fluffy Steve on Flickr. #ID24
  • 24. Paul Townsend on Flickr. #ID24
  • 25. But I’m Invincible! • Multi-tasking, • Sunlight, • Eating at your desk, • No headphones handy, • Content is not in your native language. The sun is trying to kill me. #ID24
  • 31. Steve Rhodes on Flickr. #ID24
  • 33. World Bank Photo Collection on Flickr. #ID24
  • 34. Lars Kristian Flem on Flickr. #ID24
  • 35. Tech Support • Think of your family! • Think of your time spent helping them! • Think of the wasted holidays! This is why we hate the holidays. #ID24
  • 36. Robert Simmons on Flickr. #ID24
  • 37. The Message • Supporting accessibility now helps to serve future you. Do or do not. #ID24
  • 38. The Message • Supporting accessibility now helps to serve future you. • Supporting accessibility now helps injured you, encumbered you. There is no try. #ID24
  • 39. The Message • Supporting accessibility now helps to serve future you. • Supporting accessibility now helps injured you, encumbered you. • Getting younger developers to buy in helps future you – if you teach them well. Always pass on what you have learned. #ID24
  • 40. Checklist • Accessibility is not a checklist. http://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/ #ID24
  • 41. Stairamp Dean Bouchard on Flickrhttp://accessibility.net.nz/blog/the-problems-with-ramps-blended-into-stairs/ #ID24
  • 42. Checklist • Accessibility is not a checklist. • Accessibility is an ongoing process. https://twitter.com/vavroom/status/571092086365261824 #ID24
  • 43. Maintenance Nicolas Steenhouthttps://twitter.com/vavroom/status/571092086365261824 “Wheelchair ramp at pharmacy not only hasn’t been cleared of snow but has 2 potted trees to ensure nobody can pass.” #ID24
  • 44. Some Techniques 3 of 5 sections. #ID24
  • 45. User Stories • Components: • User, • Outcome, • Value. • Writing: • As user, I want outcome. • As user, I want outcome so that value. • In order to get value as user, I want outcome. How to Write User Stories for Web Accessibility #ID24
  • 46. Selfish User Stories • As a user on a sun-lit patio, I want to be able to read the content and see the controls. Add beer and as a user I may have trouble focusing. #ID24
  • 47. Selfish User Stories • As a user in bed with a sleeping spouse, I want to watch a training video in silence so that I can get caught up at work. As a user who doesn’t want to get punched for having slacked off at work. #ID24
  • 48. Selfish User Stories • In order to click links as a user with no elbow room in coach class with a tiny trackpad, I want click areas to be large enough and adequately spaced. As a user in coach class who also paid too much for the drink he’s spilling on his keyboard. #ID24
  • 49. Selfish User Stories • As a user distracted by the TV, I want clear headings and labels so that I don’t lose my place. As a user who really should be finishing his work in the office. #ID24
  • 50. User Stories • Physical Impairment • As a keyboard-only user, I want to be able to use the entire application. This includes seeing what has focus and not getting lost in off-screen elements. #ID24
  • 51. User Stories • Physical Impairment • As a keyboard-only user, I want to be able to use the entire application. • As a keyboard-only user, I want to navigate a product list with the tab key so that I can find the right option. Arrow keys are acceptable as well, making sure that it is clear to the user. #ID24
  • 52. User Stories • Physical Impairment • As a keyboard-only user, I want to be able to use the entire application. • As a keyboard-only user, I want to navigate a product list with the tab key so that I can find the right option. • In order to click links as a limited-mobility user, I want click areas to be large enough and adequately spaced. Else I may click the wrong item and have to hit the back button, which can be time consuming. #ID24
  • 53. User Stories • Visual Impairment • As a color blind user, I want to be able to see links in page content. Underlines are important, but users also like to know what they clicked already. #ID24
  • 54. User Stories • Visual Impairment • As a color blind user, I want to be able to see links in page content. • As a low-vision user, I want to zoom the page so that I can read the content. Without the text overlapping itself or every other item on the page. #ID24
  • 55. User Stories • Visual Impairment • As a color blind user, I want to be able to see links in page content. • As a low-vision user, I want to zoom the page so that I can read the content. • In order to use the site as a blind user, I want to use a screen reader to navigate. Good headings, clear structure, landmark roles to jump around the page. #ID24
  • 56. User Stories • Hearing Impairment • As a low-hearing user, I want to be able to access transcripts. From a clear link, not through some acrobatics to find them. #ID24
  • 57. User Stories • Hearing Impairment • As a low-hearing user, I want to be able to access transcripts. • As a low-hearing user, I want access to closed captions so that I can use training videos. Timed to match the video is important. #ID24
  • 58. User Stories • Hearing Impairment • As a low-hearing user, I want to be able to access transcripts. • As a low-hearing user, I want access to closed captions so that I can use training videos. • In order to participate in a webinar as a deaf user, I want real-time captioning or transcripts. This can be tricky, since you’ll need to have a resource typing in real-time. #ID24
  • 59. User Stories • Cognitive Impairment • As a user with a vestibular disorder, I want to be able to disable parallax scrolling. But you don’t just use it for no reason, right? #ID24
  • 60. User Stories • Cognitive Impairment • As a user with a vestibular disorder, I want to be able to disable parallax scrolling. • As a user with dyscalculia, I want distinct number fields for each block of digits in a credit card number so that I can purchase a product. You can auto-detect card type. Do the same for expiration date. #ID24
  • 61. User Stories • Cognitive Impairment • As a user with a vestibular disorder, I want to be able to disable parallax scrolling. • As a user with dyscalculia, I want distinct number fields for each block of digits in a credit card number so that I can purchase a product. • In order to not get confused on pages with long text passages as a user with dyslexia, I want control over text size, spacing, and/or alignment. At the very least, turn of justified text. #ID24
  • 62. Personas Book Excerpt: A Web for Everyone, by Sarah Horton, Whitney Quesenbery #ID24
  • 63. Personas Adrian • Works when he should be relaxing, relaxes when he should be working. • Lives between motorcycles. • Works late at night with the TV on. • Uses sub-titles in Netflix. • Keeps all screens as dark as possible. That photo is from official ID. #ID24
  • 64. Basic Tests 4 of 5 sections. #ID24
  • 65. Click on Field Labels • When you click label text next to a text box, does the cursor appear in the field? • When you click label text next to a radio / checkbox, does it get toggled? • When you click label text next to a select menu, does it get focus? http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/ #ID24
  • 66. #ID24
  • 67. Unplug Your Mouse • Turn off your trackpad, stick, trackball, etc. • Can you interact with all controls (links, menus, forms) with only the keyboard? • Can you tell which item has focus? • Does the tab order match your expectation? http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/ #ID24
  • 68. #ID24
  • 69. Turn off Images • Can you still make sense of the page? • Is content missing? • Can you still use the site? • Is your alt text useful? http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/ #ID24
  • 70. #ID24
  • 71. #ID24
  • 72. Turn on High Contrast Mode • Windows only. • Left ALT + left SHIFT + PRINT SCREEN • Background images and colors are replaced. • Text colors are replaced. • Does this make your site unusable? http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/ http://blog.adrianroselli.com/2012/08/css-background-images-high-contrast-mode.html #ID24
  • 73. #ID24
  • 74. #ID24
  • 75. Turn off CSS • Does important content or functionality disappear? • Do error messages or other items that rely on visual cues make sense? • Is content still in a reasonable order? • Do any styles (colors, text effects, etc.) remain? http://www.karlgroves.com/2013/09/05/the-6-simplest-web-accessibility-tests-anyone-can-do/ #ID24
  • 76. #ID24
  • 77. Test for Colorblindness/Contrast • Is there enough contrast? • Are hyperlinks, menus, etc. still visible? • Tools: • Chrome Color Contrast Analyzer • Lea Verou’s Contrast Ratio • WebAIM Color Contrast Checker • CheckMyColours.com http://www.inpixelitrust.fr/blog/en/tips-create-accessible-color-palette/ http://alistapart.com/blog/post/easy-color-contrast-testing #ID24
  • 81. Look for Captions & Transcripts • Do video/audio clips have text alternatives? • Are links to closed-captions or transcripts built into the player or separate text links? • Is there an audio description available? • Tools: • Media Access Australia YouTube captioning tutorial, Vimeo captioning tutorial, • Tiffany Brown’s WebVTT tutorial, • DIY Resources for Closed Captioning and Transcription from 3 Play Media. http://webaim.org/techniques/captions/ #ID24
  • 83. Hyperlinks! • Is there any “click here,” “more,” “link to…”? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 84. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 85. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 86. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? • Do links to downloads provide helpful info? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 87. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? • Do links to downloads provide helpful info? • Are you using pagination links? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 88. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? • Do links to downloads provide helpful info? • Are you using pagination links? • Are your links underlined (or otherwise obvious)? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 89. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? • Do links to downloads provide helpful info? • Are you using pagination links? • Are your links underlined (or otherwise obvious)? • Is there alt text for image links? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 90. Hyperlinks! • Is there any “click here,” “more,” “link to…”? • Are you using all-caps, URLs, emoticons? • Do you warn before opening new windows? • Do links to downloads provide helpful info? • Are you using pagination links? • Are your links underlined (or otherwise obvious)? • Is there alt text for image links? • Is the link text consistent? http://www.sitepoint.com/15-rules-making-accessible-links/ #ID24
  • 92. Technical Bits 5 of 5 sections. #ID24
  • 93. WAI-ARIA • Web Accessibility Initiative – Accessible Rich Internet Applications. • Adds accessibility information to HTML elements. • Can be used with prior versions of HTML. • WAI-ARIA 1.0 published March 20, 2014. http://www.w3.org/TR/wai-aria/ #ID24
  • 94. Four Five Rules of ARIA Use 1. If you can use a native HTML5 element with semantics/behavior already built in, then do so, instead of repurposing another element. RT this! https://twitter.com/aardrian/status/454249142387081219 #ID24
  • 95. Four Five Rules of ARIA Use 2. Do not change native semantics. Unless you really have to (no <h1> with a role="button", for example). RT this! https://twitter.com/aardrian/status/454249201564532737 #ID24
  • 96. Four Five Rules of ARIA Use 3. All interactive ARIA controls must be usable with the keyboard — keyboard users must be able to perform equivalent actions. RT this! https://twitter.com/aardrian/status/454249253284483072 #ID24
  • 97. Four Five Rules of ARIA Use 4. Do not use role="presentation" or aria- hidden="true" on a focusable element. If you do so, some users will never be able to focus. RT this! https://twitter.com/aardrian/status/454249297408585729 #ID24
  • 98. Four Five Rules of ARIA Use 5. All interactive elements must have an accessible name (in progress). This may come from a visible (text on a button) or invisible (alt text on an image) property. As of May 19: http://rawgit.com/w3c/aria-in-html/master/index.html#fifth-rule-of-aria-use Accessible name: http://www.w3.org/TR/wai-aria/terms#def_accessible_name #ID24
  • 99. HTML/ARIA Don’t • <div onclick="DoThing();">Do a thing.</div> I see this all the time. #ID24
  • 100. HTML/ARIA Don’t • <div onclick="DoThing();" tabindex="0">Do a thing.</div> I see this a bunch, too. #ID24
  • 101. HTML/ARIA Don’t • <div onclick="DoThing();" tabindex="0" onkeypress="DoThing();">Do a thing.</div> Excluded bits like if(event.keyCode==32||event.keyCode==13)DoThing(); #ID24
  • 102. HTML/ARIA Don’t • <div onclick="DoThing();" tabindex="0" onkeypress="DoThing();" role="button">Do a thing.</div> ARIA roles to the rescue! Er… #ID24
  • 103. HTML/ARIA Do • <button onclick="DoThing();" onkeypress="DoThing();">Do a thing.</button> Or just start with the right element. http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/ #ID24
  • 104. WAI-ARIA • Accessibility Lipstick on a Usability Pig • By Jared Smith: http://webaim.org/blog/accessibility-lipstick-on- a-usability-pig/ • What is WAI-ARIA, what does it do for me, and what not? • By Marco Zehe: http://www.marcozehe.de/2014/03/27/what-is- wai-aria-what-does-it-do-for-me-and-what-not/ ARIA ALL THE THINGS! #ID24
  • 105. HTML5 Elements • Sectioning elements already have accessibility built in. Use them. • <header> • <nav> • <main> (one per page) • <aside> • <footer> • <form> (a search form) This stuff is baked in! #ID24
  • 106. HTML5/ARIA Landmarks • They don’t always have support in assistive technologies (AT), so use roles as well. • <header role="banner"> (once per page) • <nav role="navigation"> • <main role="main"> (one per page) • <aside role="complementary"> • <footer role="contentinfo"> (once per page) • <form role="search"> http://www.w3.org/WAI/GL/wiki/Using_ARIA_landmarks_to_identify_regions_of_a_page #ID24
  • 107. Generic Desktop Layout <header role="banner"> <nav role="navigation"> <aside role="complementary"> <form role="search"> <footer role="contentinfo"> <main role="main"> #ID24
  • 108. Generic “Mobile” Layout <header role="banner"> <nav role="navigation"> <aside role="complementary"> <form role="search"> <footer role="contentinfo"> <main role="main"> “Mobile” often means narrow screen in RWD, as well as this context. #ID24
  • 109. HTML5 Headings • Use normal heading ranks to convey document structure. • Don’t skip; go in order. <h1> <h2> <h3> <h4> <h5> <h6> Fun fact: NCSA Mosaic 1.0 had provisions for an <h7>: http://blog.adrianroselli.com/2013/04/ncsa-moscaic-turns-20.html #ID24
  • 110. HTML5 Headings • Document Outline Algorithm… • Is a myth, • Isn’t implemented in any browsers, • Should not be relied upon. • Don’t be fooled by articles claiming otherwise. • Spec has been updated. • No SEO benefit for one over other. http://blog.adrianroselli.com/2013/12/the-truth-about-truth-about-multiple-h1.html #ID24
  • 111. The New <div>itis • <section>orrhea, <article> abuse. • These map to regions in page navigation order (role="region"). • Can overwhelm users of AT. • If it doesn’t get an <h#>, don’t use it. • If it shouldn’t be in the document outline, don’t use it. http://www.w3.org/TR/html5/sections.html#the-section-element http://www.w3.org/TR/html5/sections.html#the-article-element #ID24
  • 113. Focus Styles • Necessary for keyboard use, • Use in conjunction with :hover, • Check libraries for :focus styles. It’s built in, just don’t mess with it. #ID24
  • 115. Alternative Text • Which is correct? • <img src="fox.png" alt="Photo of a fox reading aloud from a book."> http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html #ID24
  • 116. Alternative Text • Which is correct? • <img src="fox.png" alt="Photo of a fox reading aloud from a book."> • <img src="fox.png" title="Photo of a fox reading aloud from a book."> http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html #ID24
  • 117. Alternative Text • Which is correct? • <img src="fox.png" alt="Photo of a fox reading aloud from a book."> • <img src="fox.png" title="Photo of a fox reading aloud from a book."> • <img src="fox.png" aria-label="Photo of a fox reading aloud from a book."> http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html #ID24
  • 118. Alternative Text • Which is correct? • <img src="fox.png" alt="Photo of a fox reading aloud from a book."> • <img src="fox.png" title="Photo of a fox reading aloud from a book."> • <img src="fox.png" aria-label="Photo of a fox reading aloud from a book."> • <img src="fox.png" aria-labelledby="FoxPic"> <p id="FoxPic">Photo of a fox reading aloud from a book.</p> http://blog.adrianroselli.com/2013/11/image-alt-exception-change-re-re-re.html #ID24
  • 119. Alternative Text • Use alt. • Longdesc links to more verbose alternative. http://www.w3.org/blog/2014/03/wcag-techniques-for-image-text-alternatives/ #ID24
  • 120. Alternative Text Decision Tree http://www.4syllables.com.au/2010/12/text-alternatives-decision-tree/ http://dev.w3.org/html5/alt-techniques/#tree 1. What role does image play? 2. Does it present new info? 3. What type of info? Informative Yes alt="" or <a href="foo"><img alt="">Link</a> alt="" or Use CSS alt="descriptive identification" or alt="short label" + caption PurelyDecorative Sensory No alt="label for link" alt=“short alternative" or alt="short label" + caption alt="short label + location of long alternative" or long text alternative on same or linked page Long/Complex Short/Simple #ID24
  • 121. Resources Unless you had questions, which you didn’t else you would have asked by now. #ID24
  • 122. Resources • Web Accessibility and Older People: Meeting the Needs of Ageing Web Users http://www.w3.org/WAI/older-users/Overview.php • Easy Checks - A First Review of Web Accessibility http://www.w3.org/WAI/eval/preliminary • How People with Disabilities Use the Web: Overview http://www.w3.org/WAI/intro/people-use- web/Overview.html In addition to the gems I’ve sprinkled throughout. #ID24
  • 123. Resources • 2.11 ARIA Role, State, and Property Quick Reference http://www.w3.org/TR/aria-in-html/#aria-role- state-and-property-quick-reference • 2.12 Definitions of States and Properties (all aria-* attributes) http://www.w3.org/TR/aria-in-html/#definitions-of- states-and-properties-all-aria--attributes In addition to the gems I’ve sprinkled throughout. #ID24
  • 124. Resources • a11yTips http://dboudreau.tumblr.com/ • Designing For The Elderly: Ways Older People Use Digital Technology Differently http://www.smashingmagazine.com/2015/02/05/designing- digital-technology-for-the-elderly/ • How to Write User Stories for Web Accessibility http://www.interactiveaccessibility.com/blog/how-write- user-stories-accessibility-requirements • Book Excerpt: A Web for Everyone http://uxmag.com/articles/book-excerpt-a-web-for-everyone In addition to the gems I’ve sprinkled throughout. #ID24
  • 125. Presented by Adrian Roselli for Inclusive Design 24 #ID24 My thanks and apologies. Slides from this talk will be available at rosel.li/ID24 Selfish Accessibility #ID24