Introduction to �Keyboard Navigation �and Accessibility
https://matthewdeeprose.github.io/keyboardnav.html
Why talk about keyboard navigation first? 1
https://matthewdeeprose.github.io/keyboardnav.html
It covers fundamental aspects of accessibility and accessibility testing.
Awareness should have a positive impact in improving iSolutions services.
It introduces other concepts we’ll discuss in future meetings.
Why talk about keyboard navigation first? 2
https://matthewdeeprose.github.io/keyboardnav.html
It covers fundamental aspects of accessibility and accessibility testing.
Awareness should have a positive impact in improving iSolutions services.
It introduces other concepts we’ll discuss in future meetings.
Why talk about keyboard navigation first? 3
https://matthewdeeprose.github.io/keyboardnav.html
It covers fundamental aspects of accessibility and accessibility testing.
Awareness should have a positive impact in improving iSolutions services.
It introduces other concepts we’ll discuss in future meetings.
What do we mean by keyboard navigation?
A method to navigate web pages / software etc for those who cannot or do not wish to use a mouse or trackpad.
https://matthewdeeprose.github.io/keyboardnav.html
Keyboard (non-mouse) navigation (1)
https://matthewdeeprose.github.io/keyboardnav.html
Not only for keyboard navigation
Used with other assistive technologies, e.g.
Focus indicators are used by screen readers
Power users love keyboard shortcuts
Keyboard (non-mouse) navigation (2)
Navigate website using tab, enter/return, cursor keys
https://matthewdeeprose.github.io/keyboardnav.html
Interaction | Keystrokes |
Navigate to most elements | Tab Shift + Tab - navigate backward |
Link | Enter (PC) / Return (Mac) |
Button | Enter (PC) / Return (Mac) or Spacebar |
Checkbox | Spacebar - check/uncheck a checkbox |
Radio buttons | ↑ / ↓ or ← / → = select an option. Tab - move to the next element. |
Demonstration 1 on example site
https://matthewdeeprose.github.io/keyboardnav.html
Who uses keyboard navigation? (1)
Roughly 7% of working-age adults who have severe dexterity difficulties* are likely to choose, out of necessity or preference, to use their keyboard to navigate a page or some kind of assistive technology to browse content online.
31.9%** of people in the US workplace have at least one basic action difficulty or limitation.
https://matthewdeeprose.github.io/keyboardnav.html
Who uses keyboard navigation? (3)
Conditions such as…
…impair or limit fine motor skills.
https://matthewdeeprose.github.io/keyboardnav.html
Who uses keyboard navigation? (4)
Visually impaired users: using a mouse requires hand / eye co-ordination.
Those using Dragon Dictate (for example) to navigate their computer while not using the mouse or keyboard.
https://matthewdeeprose.github.io/keyboardnav.html
“Tab”, “Tab”, “Tab”, “Click Link”, “8”
Who uses keyboard navigation? (5)
A user with a broken mouse or trackpad.
https://matthewdeeprose.github.io/keyboardnav.html
Photo credit: https://www.reddit.com/user/TheRealTrietsLab
Types of impairment
https://matthewdeeprose.github.io/keyboardnav.html
Microsoft Design
Example situational impairments
Using someone else’s computer: they have a trackball, trackpad, unusual mouse that you don’t like / know how to use…
https://matthewdeeprose.github.io/keyboardnav.html
Example situational impairments (2)
https://matthewdeeprose.github.io/keyboardnav.html
Using device one-handed.
Using device in a cramped space with limited movement.
Adobe Stock Image
What recommendations are there?
https://matthewdeeprose.github.io/keyboardnav.html
The Web Content Accessibility Guidelines provide a method for us to ensure we can use keyboard navigation.
Levels of conformance: A
https://matthewdeeprose.github.io/keyboardnav.html
A
Minimum level of conformance.
AA
AAA
Levels of conformance: AA
https://matthewdeeprose.github.io/keyboardnav.html
A
Minimum level of conformance.
AA
More accessible / Recommended.
AAA
Levels of conformance: AAA
https://matthewdeeprose.github.io/keyboardnav.html
A
Minimum level of conformance.
AA
More accessible / Recommended.
AAA
Even more accessible / Enhanced.
Aspects of WCAG that relate to keyboard navigation (introduction)
https://matthewdeeprose.github.io/keyboardnav.html
We can use the site with a keyboard.
There is consideration for how we experience sites when using a keyboard.
Visual indications of the interface are clear.
Aspects of WCAG that relate to keyboard navigation (introduction) (2)
https://matthewdeeprose.github.io/keyboardnav.html
We can use the site with a keyboard.
There is consideration for how we experience sites when using a keyboard.
Visual indications of the interface are clear.
Aspects of WCAG that relate to keyboard navigation (introduction) (3)
https://matthewdeeprose.github.io/keyboardnav.html
We can use the site with a keyboard.
There is consideration for how we experience sites when using a keyboard.
Visual indications of the interface are clear.
Accessibility guidelines have four high-level principles.
https://matthewdeeprose.github.io/keyboardnav.html
Perceivable
Cater to our senses.
Operable
We can use the site.
Understandable
Readable and predictable.
Robust
Compatible across devices - even those to come in the future.
Keyboard navigation applies to two of these principles.
https://matthewdeeprose.github.io/keyboardnav.html
Perceivable
Cater to our senses.
Operable
We can use the site.
Understandable
Readable and predictable.
Robust
Compatible across devices - even those to come in the future.
2.1.1 Keyboard
(Level A)
https://matthewdeeprose.github.io/keyboardnav.html
2.1.3 Keyboard (No Exception)
(Level AAA)
https://matthewdeeprose.github.io/keyboardnav.html
2.4.1 Bypass Blocks
(Level A)
https://matthewdeeprose.github.io/keyboardnav.html
Example of a Bypass Block
https://matthewdeeprose.github.io/keyboardnav.html
2.4.3 Focus Order
(Level A)
https://matthewdeeprose.github.io/keyboardnav.html
Example of Focus Order
https://matthewdeeprose.github.io/keyboardnav.html
Demonstration 2 on example site
https://matthewdeeprose.github.io/keyboardnav.html
2.1.2 No Keyboard Trap
(Level A)
https://matthewdeeprose.github.io/keyboardnav.html
Examples
https://matthewdeeprose.github.io/keyboardnav.html
2.1.4 Character Key Shortcuts
(Level A)
If a keyboard shortcut is implemented in content using only letter (including upper- and lower-case letters), punctuation, number, or symbol characters, then at least one of the following is true:
https://matthewdeeprose.github.io/keyboardnav.html
Which of the WCAG principles are we considering? (2)
https://matthewdeeprose.github.io/keyboardnav.html
Perceivable
Cater to our senses.
Operable
We can use the site.
Understandable
Readable and predictable.
Robust
Compatible across devices - even those to come in the future.
2.4.7 Focus Visible
(Level A)
Any keyboard operable user interface has a mode of operation where the keyboard focus indicator is visible.
https://matthewdeeprose.github.io/keyboardnav.html
More examples
https://matthewdeeprose.github.io/keyboardnav.html
Indicating focus, example 1
https://matthewdeeprose.github.io/keyboardnav.html
Indicating focus, example 2
https://matthewdeeprose.github.io/keyboardnav.html
Indicating focus, example 3
https://matthewdeeprose.github.io/keyboardnav.html
2.4.11 Focus Appearance (Minimum) 1
(Level AA)
The focus indication area is greater than or equal to a 1 CSS pixel border of the focused control, or has a thickness of at least 8 CSS pixels along the shortest side of the element.
https://matthewdeeprose.github.io/keyboardnav.html
2.4.11 Focus Appearance (Minimum) 2
(Level AA)
Change of contrast:
The color change for the focus indication area has a contrast ratio of at least 3:1 with the colors of the unfocused state.
https://matthewdeeprose.github.io/keyboardnav.html
2.4.11 Focus Appearance (Minimum) 3
(Level AA)
Adjacent contrast:
https://matthewdeeprose.github.io/keyboardnav.html
2.4.11 Focus Appearance (Minimum) 4
(Level AA)
Unobscured:
https://matthewdeeprose.github.io/keyboardnav.html
2.4.12 Focus Appearance (Enhanced) 1
(Level AAA)
Minimum area:
https://matthewdeeprose.github.io/keyboardnav.html
2.4.12 Focus Appearance (Enhanced) 2
(Level AAA)
Change of contrast:
https://matthewdeeprose.github.io/keyboardnav.html
2.4.12 Focus Appearance (Enhanced) 3
(Level AAA)
Unobscured:
https://matthewdeeprose.github.io/keyboardnav.html
Colour contrast?
https://matthewdeeprose.github.io/keyboardnav.html
Examples of different colour contrasts
https://matthewdeeprose.github.io/keyboardnav.html
Revisiting hard to read contrast examples
Hard to read
1.19:1
Hard to read
1.64:1
Hard to read
1.84:1
Hard to read?
2.71:1
Hard to read?
2.96:1
Hard to read?
4:1
Easy to read
7.58:1
Easy to read
15.27:1
Easy to read
21:1
The ratios to remember
https://matthewdeeprose.github.io/keyboardnav.html
3:1
4.5:1
7:1
Minimum for Graphical Objects / UI
AA
Minimum for Text
AAA
Enhanced level for Text
(not to scale)
1.4.11 Non-text Contrast (Level AA)
1.4.3 Contrast (Minimum) (Level AA)
1.4.6 Contrast (Enhanced) (Level AAA):
More about colour contrast in a future session
https://matthewdeeprose.github.io/keyboardnav.html
Aspects of WCAG that relate to keyboard navigation (summary)
https://matthewdeeprose.github.io/keyboardnav.html
We can use the site with a keyboard.
There is consideration for how we experience sites when using a keyboard.
Visual indications of the interface are clear.
So what do I need to remember? (1)
https://matthewdeeprose.github.io/keyboardnav.html
So what do I need to remember? (2)
https://matthewdeeprose.github.io/keyboardnav.html
So what do I need to remember? (3)
https://matthewdeeprose.github.io/keyboardnav.html
So what do I need to remember? (4)
https://matthewdeeprose.github.io/keyboardnav.html
So what do I need to remember? (5)
https://matthewdeeprose.github.io/keyboardnav.html
Final demonstration
Access the prospectus from an example University web page:
https://matthewdeeprose.github.io/keyboardnav.html
https://matthewdeeprose.github.io/keyboardnav.html