Assistive tech familiarisation: Vision impairments
Updated on — 12 minutes to read
A look at some of the assistive technologies and setting out there to help those with vision impairments or blindness.
What are 'vision impairments'?
Disabilities or impairments that affect sight are extremely common.
Think beyond 'blind' β All of us are likely to encounter vision issues as we age, and there are a huge variety of conditions that may affect sight and cause someone to lean on assistive technology.
- Near/Far-sightedness
- Peripheral vision loss / Tunnel vision
- Strain from looking at screens
- Blurred vision (sometimes known as 'refractive errors')
- Age-related degeneration
- Cataract
- Diabetic Retinopathy
- Glaucoma
- Amblyopia (also called βlazy eyeβ)
- Strabismus (known as cross- or turned-out eyes)
- Blindness (a spectrum)
- Color blindness (in various types)
- Temporary conditions like eye infections
Plus many more!
No two impairments are the same
Remember, even blindness is not an absolute. It is a spectrum. Blind people can usually see something, and which assistive technologies (if any) they choose to use, and in what combination, will vary from person to person.
With vision issues in particular, those who need them will often be hybrid users of several technologies and approaches. One is rarely used exclusively over another.
No two people with disabilitis are the same, even if they have the same diagnosis. Humans are complex. We're a combination of genes, upbringing, experiences, abilities, and circumstances... Just as people cannot be seen in neat simplistic terms, nor can disability.
Let's also remember that assistive technology is exactly that. Assistive. You don't have to have a disability to use or benefit from it, but some people are reliant on these technologies because they are the difference between impairment and complete exclusion.
It's not physical or cognitive impairments that make someone "disabled". People become "disabled" by poorly designed environments that lack the adaptations needed.
It's up to us FEDs to improve our awareness and understanding so we don't create barriers that block people with our code.
You are not your users
Although it's highly valuable for developers to gain experience using assistive technologies β nothing can replace real testing by those who genuinely rely on assistive technology every day.
That's hard to organise, I know.
But an important step is welcoming feedback in the first place and being willing to fix issues that are pointed out to you.
Assistive tech time!
Now letβs look at a few tools available to us.
Familiarity with assistive tech should be empowering to us all, but especially developers, as it will help us test our solutions properly and be more aware of what weβre looking for!
In-browser Zoom
Ctrl + Plus/Minus is a quick shortcut for this in the browser.
This is also a good way to test the responsiveness of your site as it should adjust into a mobile layout on desktop as you zoom.
Screen magnification
Note, this is different to the zooming you do in the browser!
I think this one is important to go into some detail on, as so few developers seem to be aware of it. Screen magnification is heavily used by blind or partially sighted people in particular, so it's important we know about it.
Magnification on a Mac
To turn on screen magnification shortcuts on a Mac
System Preferences β Accessibility β Zoom
Then change the settings as you wish (e.g. I have "Use keyboard shortcuts to zoom toggled ON)
I actually use this all the time day-to-day! I only use the main screen magnification when testing, but use 'Hover text' regularly because I find it helpful to enlarge text as needed.
My active shortcut is holding down β
while hovering over the text I want to enlarge.
Windows - Screen Magnification instructions
Windows: Magnification
There are slightly different steps to follow on Windows 10 vs. 11.
To turn on screen magnification on Windows 11:
Start (windows icon) β Settings β Accessibility β Magnifier
There's also a shortcut: Press the Windows logoβ―key
+ [+]
. Conversely, to turn off the Magnifier, press the Windows logoβ―key
+ [Esc]
.
Windows - Screen Magnification instructions
Windows: Magnification
There are slightly different steps to follow on Windows 10 vs. 11.
To turn on screen magnification on Windows 11:
Start (windows icon) β Settings β Accessibility β Magnifier
There's also a shortcut: Press the Windows logoβ―key
+ [+]
. Conversely, to turn off the Magnifier, press the Windows logoβ―key
+ [Esc]
.
Changing browser text size
This effectively changes what 1rem equates to in the browser. So if responsive units and layout approaches have been used correctly, the site should respond well.
β οΈ This is what breaks if you set your font-size, letter-spacing, or line-height in pixels! It's an essential requirement for accessibility compliance:
Except for captions and images of text, text can be resized without assistive technology up to 200 percent without loss of content or functionality.
It is OK if this leads to horizontal scroll, as long as everything is readable and functionality maintained.
Browser text resize instructions
Chrome: Browser text size
Open Settings β Search for customise font
β Change font size using the controls
Firefox: Browser text size
Open Settings β Search for font
β Change the size
It's worth trying this out in combination with screen magnifigation and/or zoom.
Browser text resize instructions
Chrome: Browser text size
Open Settings β Search for customise font
β Change font size using the controls
Firefox: Browser text size
Open Settings β Search for font
β Change the size
It's worth trying this out in combination with screen magnifigation and/or zoom.
Change OS text size
It's very common to change OS text size on mobile devices. It's even more common how many apps then stop working because they've not been tested properly!
OS text resize instructions
iOS: Device text size
Settings β Display & Brightness β Text Size
Move the slider to one of the 7 available steps
You can also go back to step 3 and adjust Display Zoom to 'Larger Text'.
Android: Device text size
Settings β Display β Font Size
Move the slider to one of 4 available steps
There's also a setting called 'Display size' which zooms everything on the screen.
OS text resize instructions
iOS: Device text size
Settings β Display & Brightness β Text Size
Move the slider to one of the 7 available steps
You can also go back to step 3 and adjust Display Zoom to 'Larger Text'.
Android: Device text size
Settings β Display β Font Size
Move the slider to one of 4 available steps
There's also a setting called 'Display size' which zooms everything on the screen.
Color modes: Themes
It's increasingly common for sites and apps to offer dark and light modes. Some also change this automatically based on the time of day.
Theme change instructions
Mac: Themes
System settings β Appearance β Choose a theme
iOS: Themes
Settings β Display & Brightness β Appearance β Choose a theme
Windows: Themes
Start β Settings β Personalization β Themes β "Change theme"
Android: Themes
Settings β Display Options β Themes β Choose a theme
Chrome: Themes
Chrome follows your system settings, but you can override it specifically for the browser:
- on Android
- On desktop: chrome://flags/#enable-force-dark
Firefox: Themes
Settings β Search for 'theme' β Choose a theme under 'Website Appearance'
Theme change instructions
Mac: Themes
System settings β Appearance β Choose a theme
iOS: Themes
Settings β Display & Brightness β Appearance β Choose a theme
Windows: Themes
Start β Settings β Personalization β Themes β "Change theme"
Android: Themes
Settings β Display Options β Themes β Choose a theme
Chrome: Themes
Chrome follows your system settings, but you can override it specifically for the browser:
- on Android
- On desktop: chrome://flags/#enable-force-dark
Firefox: Themes
Settings β Search for 'theme' β Choose a theme under 'Website Appearance'
High contrast and colors
The contrast and display settings are super useful! There are a lot of them though, so I encourage you to browse around your machine or device to see what each one does.
Devices like iPhones are particularly good at including descriptions with each control.
A few examples to try:
- 'Increase Contrast' or 'High Contrast Mode'
- Invert colors
- Filter colors
(Apple includes options for specific types of color blindness too, I'm not sure about Windows)
Keyboard
It is essential that a site works for keyboard users, and this affects many more people than those with visual impairments.
Always check your site functions as expected with keyboard.
You will also need to become aware what keystrokes are expected for different UI patterns. E.g. You would use arrow keys to move between radio inputs, but tab to move between text inputs. This takes time, but is very easy to learn!
I encourage you to start practicing using sites with your keyboard ASAP.
Screenreaders, Braille and Voice Control
I'm not going to cover these properly now, as this post is already long enough! I'm planning some upcoming posts about these anyway.
In the meantime, here are some useful resources to get you started:
How to activate voice control
How to activate voice control
Screenreader guides
Screenreader guides
Videos on how to use Screenreaders
NVDA - For Windows:
Youtube video: NVDA - For Windows
TalkBack - For Android
Youtube video: TalkBack - For Android
Voiceover - For IOS
Youtube video: Voiceover - For IOS
VoiceOver - For Mac
Videos on how to use Screenreaders
NVDA - For Windows:
Youtube video: NVDA - For Windows
TalkBack - For Android
Youtube video: TalkBack - For Android
Voiceover - For IOS
Youtube video: Voiceover - For IOS
VoiceOver - For Mac
Hardware
As well as all the device and system settings I've listed, there is physical equipment that can help with vision impairments too. For example:
- Large screens
- Curved monitors
- Coloured overlay screens
- Glasses
- Magnifying glass
And probably loads more I've not mentioned!
What to do with this information
Iβm not suggesting you use all of these settings, tools and techniques daily (unless you have to). But dip in to them!
At a minimum, you should be testing zoom to 200%, and ensuring color contrast ratios meet WCAG AA minimum requirements (including focus outlines).
βοΈ Please see the glossary page if you've not heard of WCAG before!
My a11y testing process
I do this for everything I build to try and ensure that relevant WCAG success criteria are met:
- Zoom in/out in the browser to 200%
- Resize the viewport and do the same
- Ensure everything interactive functions as expected with keyboard
- Run an automated accessibility scan (e.g. Axe DevTools, Purple Ally, Accessibility Insights or ARC Toolkit)
- Do a "reflow test" using the Arc Toolkit browser extension
- Open the page on at least one mobile.
I will usually change the font size in my mobile browser and check both portrait and landscape orientations.
Depending on time, complexity and testing support I'll test in other ways too, but not all the time.
Again, you don't have to do all of this! Find your own process.
Just make sure everything is readable and functions when things like font size settings or colors are changed. Learning good foundational code practices, especially in HTML and CSS, will help massively with accessibility!
My a11y testing process
I do this for everything I build to try and ensure that relevant WCAG success criteria are met:
- Zoom in/out in the browser to 200%
- Resize the viewport and do the same
- Ensure everything interactive functions as expected with keyboard
- Run an automated accessibility scan (e.g. Axe DevTools, Purple Ally, Accessibility Insights or ARC Toolkit)
- Do a "reflow test" using the Arc Toolkit browser extension
- Open the page on at least one mobile.
I will usually change the font size in my mobile browser and check both portrait and landscape orientations.
Depending on time, complexity and testing support I'll test in other ways too, but not all the time.
Again, you don't have to do all of this! Find your own process.
Just make sure everything is readable and functions when things like font size settings or colors are changed. Learning good foundational code practices, especially in HTML and CSS, will help massively with accessibility!
Links to learn more
-
Accessibility Requirements for People with Low Vision
(Note: This links to the Editor's draft 2021)