SlideShare une entreprise Scribd logo
1  sur  68
Baking accessibility in
Cordelia McGee-Tubb
Accessibility Specialist at Dropbox
Soon-to-be Master of Comics
@cordeliadillon
What’s accessibility?
● Making products, services, and spaces that everyone
can use and enjoy, regardless of their abilities
● Creating flexible systems that consider the
experiences of people with disabilities from the very
start, not just through tacked-on accommodations
Why am I talking to
you about this?
You are creating
the cookbooks that
everyone else reads.
People want to
use your recipes.
Give them the best
recipes you can.
(Accessibility)
Universal Design
Cooking Class Agenda
● Foundational ingredients
common accessible code techniques
● Sugar, spice, and everything nice
making your distinct design accessible
● Sharing your recipes
documenting accessibility
Foundational
ingredients
Use semantic HTML.
Buttons: Use actual <button> elements
Primary
<button class=“button--primary”>
Primary
</button>
Secondary
Buttons: Use actual <button> elements
Primary
<a class=“button--primary”>
Primary
</a>
Secondary
Buttons: Use actual <button> elements
Primary
<div class=“button--primary” onClick=“...”>
Primary
</div>
Secondary
Buttons: Use actual <button> elements
Primary
<button class=“button--primary”>
Primary
</button>
Secondary
Form fields: Use visible, explicit labels
Favorite animal
<input type=“text” placeholder=“Favorite animal”/>
Form fields: Use visible, explicit labels
Leaping lemurs
Favorite animal
<label>Favorite animal</label>
<input type=“text” placeholder=“Leaping lemurs”/>
Form fields: Use visible, explicit labels
Leaping lemurs
Favorite animal
<label for=“animal”>Favorite animal</label>
<input id=“animal” type=“text”
placeholder=“Leaping lemurs”/>
Give images some
alternative text.
Informational: Short, descriptive alt text
<img alt=“Home” src=“house-icon.png”/>
<img alt=“Greenhouse” src=“house-icon.png”/>
Redundant: Empty alt text
<img alt=“” src=“home-icon.png”/>
<span class=“uppercase”>Home</span>
HOME
<svg aria-hidden=“true”>...</svg>
<span class=“uppercase”>Home</span>
Decorative: At your discretion, often empty
alt=“Illustration of
Cordelia grinning,
wearing a chef’s hat,
and stirring batter”
alt=“”
Include a dash of
ARIA when necessary.
A R I A
Accessible Rich Internet Applications
Communicate element’s
role, state, and properties
to assistive technology.
Some components that should use ARIA
● Modals
● Menus
● Accordions
● Tabs
● Alerts
● Trees
… and various other elements whose functionality or
purpose aren’t clear through semantic HTML alone.
Add accessible recipes to your cookbook.
WCAG 2.0 Guidelines
https://www.w3.org/TR/WCAG20/
Heydon’s Practical ARIA Examples
http://heydonworks.com/practical_aria_examples/
Web Accessibility Slack community
http://web-a11y.herokuapp.com/
Sugar, spice, and
everything nice
Make keyboard
interactions as rich as
mouse interactions.
Don’t forget about
focus styles.
Focus styles
Focus styles
Focus styles
Love
Focus styles
Love Love
Love Love
Color
Two color rules:
Do maintain reasonable contrast between
text and background colors.
Don’t use color alone to convey meaning.
Rule #1: Reasonable contrast for text
WCAG 2.0 Guidelines
4.5:1 for regular text
3:1 for large text
http://leaverou.github.io/contrast-ratio/
http://wave.webaim.org
dropbox.github.io/scooter/functions.html
dropbox.github.io/scooter/functions.html
Use vibrant colors!
Use light colors!
Rule #2: Use more than just color for meaning
Rule #2: Use more than just color for meaning
Rule #2: Use more than just color for meaning
Rule #2: Use more than just color for meaning
Sharing
your recipes
Include accessibility
notes in your
documentation.
Component documentation
● Discourages accidental removal of accessible aspects
● Encourages constant attention to accessibility
● Spreads best practices
General documentation
● Might get overlooked (so shouldn’t exist by itself)
● Encourages holistic thinking about inclusive design
● Spreads best practices
Cooking Class Recap
● Bake accessibility in from the beginning!
● Use these key ingredients:
○ semantic HTML
○ alternative text
○ ARIA (as necessary)
○ keyboard interactivity
● Use color! Make sure text is high contrast and and there
are additional visual elements for meaning.
● Share your accessible recipes generously.
Thanks!
@cordeliadillon

Contenu connexe

Similaire à Baking Accessibility In

Social Bookmarking; Delicious. How & Why
Social Bookmarking; Delicious. How & WhySocial Bookmarking; Delicious. How & Why
Social Bookmarking; Delicious. How & WhyDavid Hopkins
 
Website designers and software Engineers
Website designers and software EngineersWebsite designers and software Engineers
Website designers and software EngineersRajesh Grover
 
TrueSpirit.com Case Study
TrueSpirit.com Case StudyTrueSpirit.com Case Study
TrueSpirit.com Case StudyRoxanne Mustafa
 
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They MatterSrijan Technologies
 
Creating Accessible Documents
Creating Accessible DocumentsCreating Accessible Documents
Creating Accessible DocumentsAna Thompson
 
Prototyping giao diện sử dụng Expression Blend Sketch Flow
Prototyping giao diện sử dụng Expression Blend Sketch FlowPrototyping giao diện sử dụng Expression Blend Sketch Flow
Prototyping giao diện sử dụng Expression Blend Sketch FlowTechMaster Vietnam
 
Design Before Code - Global Accessibility Awareness Day Edition
Design Before Code - Global Accessibility Awareness Day EditionDesign Before Code - Global Accessibility Awareness Day Edition
Design Before Code - Global Accessibility Awareness Day EditionCaitlin Geier
 
Technovation challenge workplan for week 4
Technovation challenge workplan for week 4Technovation challenge workplan for week 4
Technovation challenge workplan for week 4wetech_global
 
HTML5 design principles
HTML5 design principlesHTML5 design principles
HTML5 design principlesHarshal Patil
 
How to Build Products for the Blind by Sidewalk Labs' Engineer
How to Build Products for the Blind by Sidewalk Labs' EngineerHow to Build Products for the Blind by Sidewalk Labs' Engineer
How to Build Products for the Blind by Sidewalk Labs' EngineerProduct School
 
The Flexibility of Drupal
The Flexibility of DrupalThe Flexibility of Drupal
The Flexibility of DrupalMichael Miles
 
UX improvements to Drupal 8
UX improvements to Drupal 8UX improvements to Drupal 8
UX improvements to Drupal 8Kiat Lim
 
A simple test paper from Chen
A simple test paper from ChenA simple test paper from Chen
A simple test paper from Chentechweb08
 

Similaire à Baking Accessibility In (20)

Social Bookmarking; Delicious. How & Why
Social Bookmarking; Delicious. How & WhySocial Bookmarking; Delicious. How & Why
Social Bookmarking; Delicious. How & Why
 
Delicious Kare
Delicious KareDelicious Kare
Delicious Kare
 
EVOLVE"13 | Maximize & Enhance | Accessibility | Kiran Kaja
EVOLVE"13 | Maximize & Enhance | Accessibility | Kiran KajaEVOLVE"13 | Maximize & Enhance | Accessibility | Kiran Kaja
EVOLVE"13 | Maximize & Enhance | Accessibility | Kiran Kaja
 
Website designers and software Engineers
Website designers and software EngineersWebsite designers and software Engineers
Website designers and software Engineers
 
TrueSpirit.com Case Study
TrueSpirit.com Case StudyTrueSpirit.com Case Study
TrueSpirit.com Case Study
 
Pruexx User's guide for beta testing
Pruexx User's guide for beta testingPruexx User's guide for beta testing
Pruexx User's guide for beta testing
 
Delicious
Delicious Delicious
Delicious
 
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter
[Srijan Wednesday Webinars] UX Improvements of Drupal 8 and Why They Matter
 
Creating Accessible Documents
Creating Accessible DocumentsCreating Accessible Documents
Creating Accessible Documents
 
Prototyping giao diện sử dụng Expression Blend Sketch Flow
Prototyping giao diện sử dụng Expression Blend Sketch FlowPrototyping giao diện sử dụng Expression Blend Sketch Flow
Prototyping giao diện sử dụng Expression Blend Sketch Flow
 
Design Before Code - Global Accessibility Awareness Day Edition
Design Before Code - Global Accessibility Awareness Day EditionDesign Before Code - Global Accessibility Awareness Day Edition
Design Before Code - Global Accessibility Awareness Day Edition
 
Social Bookmarking
Social BookmarkingSocial Bookmarking
Social Bookmarking
 
Web design
Web designWeb design
Web design
 
Technovation challenge workplan for week 4
Technovation challenge workplan for week 4Technovation challenge workplan for week 4
Technovation challenge workplan for week 4
 
HTML5 design principles
HTML5 design principlesHTML5 design principles
HTML5 design principles
 
How to Build Products for the Blind by Sidewalk Labs' Engineer
How to Build Products for the Blind by Sidewalk Labs' EngineerHow to Build Products for the Blind by Sidewalk Labs' Engineer
How to Build Products for the Blind by Sidewalk Labs' Engineer
 
The Flexibility of Drupal
The Flexibility of DrupalThe Flexibility of Drupal
The Flexibility of Drupal
 
UX improvements to Drupal 8
UX improvements to Drupal 8UX improvements to Drupal 8
UX improvements to Drupal 8
 
Pml 5
Pml 5Pml 5
Pml 5
 
A simple test paper from Chen
A simple test paper from ChenA simple test paper from Chen
A simple test paper from Chen
 

Dernier

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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Dernier (20)

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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
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
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Baking Accessibility In