When creating accessible websites, most web developers and web managers tend to follow the W3C accessibility guidelines. And rightly so - they are the most comprehensive accessibility resource on the Internet after all.
The W3C accessibility guidelines, or Web Content Accessibility Guidelines as they're officially known, could go slightly further however. Fulfilling the guidelines can give you a very accessible website (remember though, they are just guidelines so shouldn't always be taken literally).
For unique accessibility though, these techniques can be tried to implement:
Hidden text could be very beneficial for screen reader users. If these users are unable to get a particular section because there is not enough text explaining the section, then you can fix that very simply by creating the extra information and hiding it from sighted users. While there are those who insist that text delivered to visual and non-visual browsers should always be ideal, providing additional context to visually-impaired readers benefits them greatly.
The most common and useful page items to insert invisible text for screen reader users include:
Every single section on each page must have a heading placed immediately before it. This way, screen reader users always know that the preceding section has finished and a new section has to begun. So, before the main navigation starts, one should insert a heading labeled, 'Site navigation'. Although this heading is extremely useful for screen reader users, it may look rather unsightly visually, so you can just make the text invisible.
Every form item must have a label immediately preceding it - otherwise, screen reader users wouldn't know what the form item is about. Date of birth fields, with three separate fields for date, month and year, are common culprits of not providing form labels for each form field. So, place the date of birth label before the three form fields, and then insert an invisible label before each of the other two form fields, 'Month of birth' and 'Year of birth'.
A skip link is an invisible link that's placed at the very top of the HTML file. It's a relative link within the page, allowing users to jump straight to a section on the page, usually the main content. Skip links are really useful for both screen reader and keyboard-only users who can jump straight to the content, without having to work through the navigation.
Succinct, front-loaded and conventional link text
As a method of browsing through a page, screen reader users can call up a list of links on a page and jump to the link in which they're most interested. Its common knowledge that link text should make sense out of context and this is indeed a W3C guideline. Link text such as 'Click here' would obviously make no sense in a list like this. It's also crucial that link text is:
• Succinct - so that it's quick and easy for screen reader users to work through this list
• Front-loaded - so that screen users can understand the meaning of the link straightaway and jump down to the next one if they're not interested
• Conventional - so screen reader users can alphabetise the list and jump to the link they're looking for (e.g. if the 'Contact us' link was labeled as 'Enquiries' it would be harder to find the website's phone number)
Link text is additionally important for users that find it difficult to read online, such as screen magnifier users and those with learning difficulties and dyslexia. For these users when they scan through web pages, they'll often be unable to make out specific words - instead, they'll see shapes and colours. Anything that's in a high contrast colour is obviously a link, so they can stop and read it.
By making link text succinct and front-loaded, and using conventional link text, it's far easier for users that find it difficult to read online to immediately comprehend links and what their destination is.
Visible font resizer
It's crucial that text is resizable for web users with poor or limited vision - or so the theory goes. By providing a visible font resizer all users are of course made aware that they can resize the text should they need to.
Place instructions first
If you provide instructions for any kind of functionality on your site, make sure that the instructions are placed before the functionality. This of course sounds obvious, but it's amazing how many times this rule isn't adhered to.
Screen reader users listen to pages in the order that they're written in, so if any instructions come after what they're relating to then that's obviously going to be too late.
Headings are crucial for all users to find what they're looking for quickly and efficiently. They are however particularly useful for any user that finds it difficult to read online, such as screen magnifier users and those with learning difficulties and dyslexia.
Focus state for links
Keyboard-only web users can navigate through web pages by tabbing from link to link (and form item to item). It can however sometimes be difficult to know exactly where you are on the page when relying on the tabbing method. By assigning a background colour to the focus state of each link, it becomes much easier for these users to orientate themselves on the page.
Large link target
Many web users with dexterity problems will use only the keyboard to browse through a website. Some will still continue to use a mouse but with rather have limited control, so wherever possible do try to increase the area of the link target. This is of course not possible for regular links, but for vertical based navigation lists it's easy to extend the clickable area to the full width of the column by assigning the style, display: block to each link.
The Advanced accessibility guidelines are important, can make your site truly accessible then there's more that you can do.