45
CHOOSING AN ACCESSIBLE UI FRAMEWORK

AHG 2015 Choosing an Accessible UI Framework

Embed Size (px)

Citation preview

Page 1: AHG 2015 Choosing an Accessible UI Framework

CHOOSING AN ACCESSIBLEUI FRAMEWORK

Page 2: AHG 2015 Choosing an Accessible UI Framework

2CONTACTChoosing an Accessible UI Framework

Gerard K. CohenFront-End Ux Architect/ Senior Accessibility LeadWells Fargo, Wholesale Technology Servicesemail:// [email protected]:// @gerardkcohen

Page 3: AHG 2015 Choosing an Accessible UI Framework

UI FRAMEWORKS

Page 4: AHG 2015 Choosing an Accessible UI Framework

HOW DO YOU KNOWWHICH ONE ISACCESSIBLE?

Page 5: AHG 2015 Choosing an Accessible UI Framework

MATERIALDESIGNLITE

Page 6: AHG 2015 Choosing an Accessible UI Framework

6TOPICSChoosing an Accessible UI Framework

FORMS

DIALOGS

TABS

TOOLTIPS

Page 7: AHG 2015 Choosing an Accessible UI Framework

7CRITERIAChoosing an Accessible UI Framework

KEYBOARD NAVIGATION/ FOCUS INDICATION

ARIA(http://www.w3.org/TR/wai-aria-practices/#aria_ex)

PROPER LABELS/ DESCRIPTIONS

COLOR CONTRAST

Page 8: AHG 2015 Choosing an Accessible UI Framework

FORMS

Page 9: AHG 2015 Choosing an Accessible UI Framework

10FORM CRITERIAChoosing an Accessible UI Framework

FOCUS INDICATION

ERROR VALIDATION

PROPER LABELS/ GROUPING

COLOR CONTRAST

Page 10: AHG 2015 Choosing an Accessible UI Framework
Page 11: AHG 2015 Choosing an Accessible UI Framework
Page 12: AHG 2015 Choosing an Accessible UI Framework

FORMS SOLUTION

Page 13: AHG 2015 Choosing an Accessible UI Framework

24FORMS SOLUTIONChoosing an Accessible UI Framework

GROUP RELATED FIELDS WITHFIELDSET/ LEGEND

EXPLICITLY ASSOCIATE LABELSWITH INPUTS

CONVEY ERROR STATE ANDDESCRIPTION

Page 14: AHG 2015 Choosing an Accessible UI Framework

25VISUALLY HIDDEN CONTENTChoosing an Accessible UI Framework

FOUNDATION: .show-for-srBOOTSTRAP: .sr-only

Page 15: AHG 2015 Choosing an Accessible UI Framework

26VISUALLY HIDDEN CONTENTChoosing an Accessible UI Framework

.u-hiddenVisually { border: 0; clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}

Page 16: AHG 2015 Choosing an Accessible UI Framework
Page 17: AHG 2015 Choosing an Accessible UI Framework
Page 18: AHG 2015 Choosing an Accessible UI Framework

TABS

Page 19: AHG 2015 Choosing an Accessible UI Framework

12TABS CRITERIAChoosing an Accessible UI Framework

FOCUS INDICATION

ARIA

KEYBOARD INTERACTION

COLOR CONTRAST

Page 20: AHG 2015 Choosing an Accessible UI Framework

13TABS KEYBOARD INTERACTIONChoosing an Accessible UI Framework

LEFT/ UP FOR PREVIOUS TAB

ARROW KEYS SHOULD CYCLE

TAB KEY FOCUSES ACTIVE TAB

RIGHT/ DOWN FOR NEXT TAB

Page 21: AHG 2015 Choosing an Accessible UI Framework

14TABS ARIAChoosing an Accessible UI Framework

STATES: ARIA-SELECTED

ROLES: TABPANEL, TABLIST, TAB

PROPERTIES: ARIA-CONTROLS

Page 22: AHG 2015 Choosing an Accessible UI Framework
Page 23: AHG 2015 Choosing an Accessible UI Framework

TABS SOLUTION

Page 24: AHG 2015 Choosing an Accessible UI Framework

28TABS SOLUTIONChoosing an Accessible UI Framework

LEFT/ UP FOR PREVIOUS TAB

ARROW KEYS SHOULD CYCLE

TAB KEY FOCUSES ACTIVE TAB

RIGHT/ DOWN FOR NEXT TAB

Page 25: AHG 2015 Choosing an Accessible UI Framework

29TABS SOLUTIONChoosing an Accessible UI Framework

Paypal Bootstrap Accessibility Plugin

http://paypal.github.io/bootstrap-accessibility-plugin/

Page 26: AHG 2015 Choosing an Accessible UI Framework
Page 27: AHG 2015 Choosing an Accessible UI Framework

DIALOGS

Page 28: AHG 2015 Choosing an Accessible UI Framework

16DIALOG CRITERIAChoosing an Accessible UI Framework

FOCUS INDICATION

ARIA

KEYBOARD INTERACTION

COLOR CONTRAST

Page 29: AHG 2015 Choosing an Accessible UI Framework

17DIALOG ARIAChoosing an Accessible UI Framework

ROLES: DIALOG, ALERTDIALOGPROPERTIES: ARIA-LABEL, ARIA-LABELLEDBY

Page 30: AHG 2015 Choosing an Accessible UI Framework
Page 31: AHG 2015 Choosing an Accessible UI Framework

DIALOGS SOLUTION

Page 32: AHG 2015 Choosing an Accessible UI Framework

31DIALOG SOLUTIONChoosing an Accessible UI Framework

FOCUS SHOULD RETURN TO TRIGGER

CYCLE FOCUS WITHIN DIALOG

ROLE=“DIALOG”, ARIA-HIDDEN,ARIA-LABELLEDBY

Page 33: AHG 2015 Choosing an Accessible UI Framework
Page 34: AHG 2015 Choosing an Accessible UI Framework

TOOLTIPS

Page 35: AHG 2015 Choosing an Accessible UI Framework

19TOOLTIP CRITERIAChoosing an Accessible UI Framework

COLOR CONTRAST

KEYBOARD INTERACTION

ARIA

Page 36: AHG 2015 Choosing an Accessible UI Framework

20TOOLTIP KEYBOARD INTERACTIONChoosing an Accessible UI Framework

ESCAPE TO HIDE

TAB KEY TO DISPLAY

Page 37: AHG 2015 Choosing an Accessible UI Framework

21TOOLTIP ARIAChoosing an Accessible UI Framework

PROPERTIES: ARIA-LABELLEDBY

ROLES: TOOLTIP

Page 38: AHG 2015 Choosing an Accessible UI Framework
Page 39: AHG 2015 Choosing an Accessible UI Framework

TOOLTIP SOLUTION

Page 40: AHG 2015 Choosing an Accessible UI Framework

33TABS SOLUTIONChoosing an Accessible UI Framework

ROLE=“TOOLTIP”, ARIA-LABELLEDBY

DISPLAY ON FOCUS, ESC TO HIDE

Page 41: AHG 2015 Choosing an Accessible UI Framework
Page 42: AHG 2015 Choosing an Accessible UI Framework

FUTURE OF FRAMEWORKS

Page 43: AHG 2015 Choosing an Accessible UI Framework

CONCLUSION

Page 44: AHG 2015 Choosing an Accessible UI Framework

36CONCLUSIONChoosing an Accessible UI Framework

YOU NEED TO FILL IN THE GAPS

CONTRIBUTE BACK

NO SILVER BULLET

SHARE YOUR KNOWLEDGE

Page 45: AHG 2015 Choosing an Accessible UI Framework

CHOOSING AN ACCESSIBLEUI FRAMEWORK