Accessibility with CSS: Making Websites Better for Everyone

45
ACCESSIBILITY WITH CSS: MAKING WEBSITES BETTER FOR EVERYONE

description

When we make our sites more accessible we make them easier for everyone to use.

Transcript of Accessibility with CSS: Making Websites Better for Everyone

Page 1: Accessibility with CSS: Making Websites Better for Everyone

ACCESSIBILITY WITH CSS: MAKING WEBSITES BETTER FOR EVERYONE

Page 2: Accessibility with CSS: Making Websites Better for Everyone

WHAT IS ACCESSIBILITY?

Page 3: Accessibility with CSS: Making Websites Better for Everyone

SCREEN READERPage has fifty-eight headings and two hundred seventy-one links BBC dash Homepage Link Graphic BBC Heading level two Heading level two BBC navigation List of nine items bullet Link News bullet Link Sport bullet Link Weather bullet Link Capital bullet Link Future bullet Link Shop bullet Link TV bullet Link Radio bullet Link More…List end Search term colon Edit Graphic Search Heading

Page 4: Accessibility with CSS: Making Websites Better for Everyone

HIGH CONTRAST

Page 5: Accessibility with CSS: Making Websites Better for Everyone

HIGH CONTRAST

Page 6: Accessibility with CSS: Making Websites Better for Everyone

VOICE RECOGNITION

Page 7: Accessibility with CSS: Making Websites Better for Everyone

VOICE RECOGNITION

Page 8: Accessibility with CSS: Making Websites Better for Everyone

VOICE RECOGNITION

Page 9: Accessibility with CSS: Making Websites Better for Everyone

TRACKBALL

Page 10: Accessibility with CSS: Making Websites Better for Everyone

KEYBOARD

Page 11: Accessibility with CSS: Making Websites Better for Everyone

YOU SHOULD CARE ABOUT ACCESSIBILITY

Page 12: Accessibility with CSS: Making Websites Better for Everyone

1: UXContentInformation ArchitectureInterface Design

Page 13: Accessibility with CSS: Making Websites Better for Everyone

2: HTMLWCAG (Web Content Accessibility Guidelines)

Page 14: Accessibility with CSS: Making Websites Better for Everyone

3: JAVASCRIPTARIA Roles(Accessible Rich Internet Applications)

Page 15: Accessibility with CSS: Making Websites Better for Everyone

4: CSS

Page 16: Accessibility with CSS: Making Websites Better for Everyone

DON’T SCREW IT UPDon’t disable outlines.Don’t forget :focus.Don’t write in ALL CAPS.Style the right element.

Page 17: Accessibility with CSS: Making Websites Better for Everyone

MAKE IMPROVEMENTS

Page 18: Accessibility with CSS: Making Websites Better for Everyone

LINKSBigger is better.Be descriptive.Underline on :hover.

Page 19: Accessibility with CSS: Making Websites Better for Everyone

LINKS

Page 20: Accessibility with CSS: Making Websites Better for Everyone

LINKS

Page 21: Accessibility with CSS: Making Websites Better for Everyone

<a href="article.html">

<h3>Heavy-duty…</h3><p>Government is providing… transportation programs.</p>

</a>

Page 22: Accessibility with CSS: Making Websites Better for Everyone

LINKS

Page 23: Accessibility with CSS: Making Websites Better for Everyone

LINKS

Page 24: Accessibility with CSS: Making Websites Better for Everyone

GENERATED CONTENT

Page 25: Accessibility with CSS: Making Websites Better for Everyone

GENERATED CONTENTbutton[type=submit]:after { content: " >"; speak: none; }

<button type="submit">Next</button>

Page 26: Accessibility with CSS: Making Websites Better for Everyone

GENERATED CONTENT

Page 27: Accessibility with CSS: Making Websites Better for Everyone

GENERATED CONTENT

Page 28: Accessibility with CSS: Making Websites Better for Everyone

SPRITES

Page 29: Accessibility with CSS: Making Websites Better for Everyone

SPRITES

Page 30: Accessibility with CSS: Making Websites Better for Everyone

SPRITES.icon { overflow: hidden; }.icon:before { content: url(sprite.png); position: absolute; top: -30px; left: -30px;}

Page 31: Accessibility with CSS: Making Websites Better for Everyone

SPRITES

Page 32: Accessibility with CSS: Making Websites Better for Everyone

SPRITES

Page 33: Accessibility with CSS: Making Websites Better for Everyone

ICON FONTS<span class="icon icon_check"></span>

.icon_check { content: '\e00e'; }

Page 34: Accessibility with CSS: Making Websites Better for Everyone

ICON FONTS<span class="icon"> <span class="icon_check" aria-hidden=“true”></span> <span class=“offscreen”> Good</span></span>

Page 35: Accessibility with CSS: Making Websites Better for Everyone

ARIA AS A HOOK.summary[aria-expanded=false]{ /* make it look clickable */}.details[aria-hidden=true] { display: none;}

Page 36: Accessibility with CSS: Making Websites Better for Everyone

SPECIAL FEATURES.offscreenSkip navigation link

Page 37: Accessibility with CSS: Making Websites Better for Everyone

.OFFSCREEN

.offscreen { position: absolute; height: 1px; width: 1px; overflow: hidden; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);}

Page 38: Accessibility with CSS: Making Websites Better for Everyone

SKIP LINK

Page 39: Accessibility with CSS: Making Websites Better for Everyone

SKIP LINK

Page 40: Accessibility with CSS: Making Websites Better for Everyone

FORM LABELS

Page 41: Accessibility with CSS: Making Websites Better for Everyone

FORM LABELS

Page 42: Accessibility with CSS: Making Websites Better for Everyone

TRY IT YOURSELFChromeVoxWindows High Contrast ThemeTurn off your mouse

Page 43: Accessibility with CSS: Making Websites Better for Everyone

BETTER FOR EVERYONE

Page 44: Accessibility with CSS: Making Websites Better for Everyone

I LIKE TO MAKE WEBSITES EVERYONE CAN [email protected]