Top Banner
Accessibility Lightning Talk Sunday, April 10, 2011
49

Accessibility Lightning Talk

May 17, 2015

Download

Design

Practical tips to make a website more accessible to different devices, technologies, and interactions. Presented April 12, 2011 for the WordPress DC Meetup.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Accessibility Lightning Talk

Accessibility Lightning Talk

Sunday, April 10, 2011

Page 2: Accessibility Lightning Talk

When you hear ‘accessibility’what comes to mind?

Sunday, April 10, 2011

Page 3: Accessibility Lightning Talk

Do you think of this?

Sunday, April 10, 2011

Page 4: Accessibility Lightning Talk

...or this?

Sunday, April 10, 2011

Page 5: Accessibility Lightning Talk

Have you thought about this?

Sunday, April 10, 2011

Page 6: Accessibility Lightning Talk

or this?

Sunday, April 10, 2011

Page 7: Accessibility Lightning Talk

or even this?

Sunday, April 10, 2011

Page 8: Accessibility Lightning Talk

Accessibility is not about people with disabilities.

Sunday, April 10, 2011

Page 9: Accessibility Lightning Talk

Accessibility is about

people!

Sunday, April 10, 2011

Page 10: Accessibility Lightning Talk

Accessibility encompasses...

Sunday, April 10, 2011

Page 11: Accessibility Lightning Talk

Different Devices

★ Desktop Computer

★ Mobile

★ In Between (iPad, Netbooks)

★ TV’s

Sunday, April 10, 2011

Page 12: Accessibility Lightning Talk

Different Interactions

★ Mouse

★ Keyboard

★ Touchscreen

★ Screenreader

Sunday, April 10, 2011

Page 13: Accessibility Lightning Talk

Different Technologies

★ JavaScript

★ CSS

★ Images

display: none;

Sunday, April 10, 2011

Page 14: Accessibility Lightning Talk

Tips For Better Accessibility

Sunday, April 10, 2011

Page 15: Accessibility Lightning Talk

Use The Right Element For The Job

<p> = paragraph

<h1>-<h6> = Heading 1 through 6

<div class=”paragraph”>

Using Tables for Layout

Sunday, April 10, 2011

Page 16: Accessibility Lightning Talk

Think About Source Order★ Markup content the way it should be read NOT the

way it should be displayed.

Header

Aside Content

Header

Content

Aside

Sunday, April 10, 2011

Page 17: Accessibility Lightning Talk

Use Alt Attributes on <img>

★ Include text to display as a backup

★ Provide context to what the user is missing

★ If the image is purely decoration use alt=””

Sunday, April 10, 2011

Page 18: Accessibility Lightning Talk

Associate Inputs with Labels

★ Link descriptive text with an input field

★ Provides context about what is expected

★ Clicking label puts cursor in input field

Sunday, April 10, 2011

Page 19: Accessibility Lightning Talk

Implicit vs. Explicit Labels

<label for=”name”>Name</label><input type=”text” id=”name”>

<label> Name <input type=”text”></label>

label { curser: pointer; }

Sunday, April 10, 2011

Page 20: Accessibility Lightning Talk

Use HTML5 Input Types

★ type=”search”

★ type=”tel”

★ type=”url”

★ type=”email”

★ type=”number”

★ Old browsers fallback to type=”text”

Sunday, April 10, 2011

Page 21: Accessibility Lightning Talk

Type=“search” Has Slight Benefits

Sunday, April 10, 2011

Page 22: Accessibility Lightning Talk

Removing Type=”search” Default Styles

input[type=”search”] { -moz-appearance: textfield; -webkit-appearance: textfield;}

input[type=”search”]::-webkit-search-cancel-button { /* Remove default */ -webkit-appearance: none;}

Sunday, April 10, 2011

Page 23: Accessibility Lightning Talk

<input type=”number”>

Sunday, April 10, 2011

Page 24: Accessibility Lightning Talk

<input type=”url”>

Sunday, April 10, 2011

Page 25: Accessibility Lightning Talk

<input type=”email”>

Sunday, April 10, 2011

Page 26: Accessibility Lightning Talk

Turn On Keyboard Navigation In OS X

System Preferences -> Keyboard -> All Controls

Sunday, April 10, 2011

Page 27: Accessibility Lightning Talk

Tab Index

★ Use tabindex attribute to specify tab order

★ Tab index goes from lowest to highest

★ tabindex=”-1” will be skipped

★ If you use proper HTML source order,

you’re done!

Sunday, April 10, 2011

Page 28: Accessibility Lightning Talk

:focus = :hover

★ Anywhere :hover is used, add :focus as well

a:hover,a:focus { text-decoration:underline; color:red;}

Sunday, April 10, 2011

Page 29: Accessibility Lightning Talk

Example of Bad Keyboard Accessibility

★ http://www.hd-live.co.uk/

Sunday, April 10, 2011

Page 30: Accessibility Lightning Talk

Hiding Content the Accessible Way

/* Hides from keyboard users */display:none;

/* Hidden but still accessible */.hidden { left:-999em; position:absolute; top:auto;}

Sunday, April 10, 2011

Page 31: Accessibility Lightning Talk

Revealing Hidden Content

/* Reveal on Focus */.hidden:focus { position:static;}

Sunday, April 10, 2011

Page 32: Accessibility Lightning Talk

Skip Navigation Link

★ Lets a visitor skip straight to the content

★ Without it, keyboard visitors suffer

★ Should be the first element after <body>

★ Can be visible or hidden based on the desgin

★ If hidden, should stand out on focus

Sunday, April 10, 2011

Page 33: Accessibility Lightning Talk

Skip Navigation Link

<body> <a id="top" href="#content"> Skip to Content</a>

Sunday, April 10, 2011

Page 34: Accessibility Lightning Talk

Skip Navigation Link

#top:focus { position:static; font-size:1.5em; background-color:#FFFFD5; display:block; font-weight:bold; color:#000; padding:2px 15px 5px;}

Sunday, April 10, 2011

Page 35: Accessibility Lightning Talk

ARIA Landmark Roles

★ Help define the structure of a document

★ Screenreaders can jump around

to different sections

★ Just add role attribute to an element

<div id=”header” role=”banner”>

Sunday, April 10, 2011

Page 36: Accessibility Lightning Talk

role=”article”

★ Content that makes sense in its own right, such

as a complete blog post, a comment on a blog,

a post in a forum, and so on.

Sunday, April 10, 2011

Page 37: Accessibility Lightning Talk

role=”banner”

★ Site-orientated content, such as the title of the

page and the logo.

★ Header

Sunday, April 10, 2011

Page 38: Accessibility Lightning Talk

role=”complementary”

★ Supporting content for the main content, but

meaningful in its own right when separated from

the main content.

★ Aside or sidebar

Sunday, April 10, 2011

Page 39: Accessibility Lightning Talk

role=”contentinfo”

★ Child content, such as footnotes, copyrights,

links to privacy statement, links to preferences,

and so on.

★ Footer

Sunday, April 10, 2011

Page 40: Accessibility Lightning Talk

role=”main”

★ Content that is directly related to or expands on

the central content of the document.

★ Main content container, #content

Sunday, April 10, 2011

Page 41: Accessibility Lightning Talk

role=”navigation”

★ Content that contains the links to navigate this

document and/or related documents.

Sunday, April 10, 2011

Page 42: Accessibility Lightning Talk

role=”search”

★ This section contains a search form to search

the site.

Sunday, April 10, 2011

Page 43: Accessibility Lightning Talk

Mobile Stylesheet

★ Smartphones handle websites OK

★ Dumb phones need a slimmed down stylesheet

★ http://perishablepress.com/press/2009/08/02/

the-5-minute-css-mobile-makeover/

Sunday, April 10, 2011

Page 45: Accessibility Lightning Talk

Accessibility isn’t something you can tack on

at the end!Sunday, April 10, 2011

Page 46: Accessibility Lightning Talk

Think about it from the start.

Sunday, April 10, 2011

Page 48: Accessibility Lightning Talk

Russell Heimlich

★ @kingkool68

★ http://www.russellheimlich.com/blog/

Sunday, April 10, 2011

Page 49: Accessibility Lightning Talk

The Endhttp://slidesha.re/kingkool68

Sunday, April 10, 2011