by Vivienne Trulock
Created and designed by Vivienne Trulock for ilikecake, 2005
Accessibility in web means having a site that is available to everyone, regardless of physical or cognitive abilities. The Web Constorium Accessibility Guidelines (WCAG 1.0) have been adopted by the EU as the standard by which websites will be judged accessible or not. Recent changes in UK laws means that if your site is not accessible at level 1 it may be illegal. There are three levels of priority (1, 2 and 3) and three levels of conformance (A, AA and AAA).
This basically means putting in alt attributes on all images and hotspots.This means that blind peoples' screen readers can read out the alternative text, and they will understand what the image's purpose is.
![]()
![]()
If an image is purely decorative and serves no function, putting an alt="" attribute allows the screen reader to skip the image, instead of alerting the user in case the image is important. Alt="" is not the same as having no alt tag.
![]()
![]()
Colour blindness and some types of dyslexia mean that people with these disorders may not be able to see various colour combinations properly. For example, if a text hyperlink is green in the normal state and red in the rollover state, people with red-green colour blindness may not realise that the text is a link. Another non-colour method should be used to indicate links, such as underline, dash-underline or bold. In addition, if the foreground and backgound colours are too similar, they may ot provide a good enough contrast for people with poor vision. Older people tend to have a 'yellower' vision so they may not always see what you do.

Use external cascading style sheets to style html pages. Use percentages rather than pixels and use relative font sizes such as small or large.

Use header elements to convey document structure. Each page should begin with <H1>. <H2> should be used to denote a subset of <H1> and <H3> to denote a subset of <H2>. In particular, do not use headers for font effects.
Use <LI> for lists.

Mark up quotations with the Q or BLOCKQUOTE tags and style with style sheets. Each page should have a <!DOCTYPE> tag so browsers can render it correctly.
![]()
For braille devices and speech synthesisers to work correctly they need
to know what natural language the text is written in. ![]()
When using acronyms (BBC, HTML, CSS), mark up the first instance of the acroynm on the page with the acronym tag, and use a title attribute to elaborate on the acronym letters.

You can then style the acronym tag with style sheets as usual.

Tables can be unhelpful for those using speech synthesisers, as the text may be read horizontally, along the screen, rather than by table cell, as expected. Use style sheets for page layout rather than tables where possible. When making a data table, use <TD> for data cells and <TH> for table headers. Use the abbr attribute to give a short explanation of long table headers. Do not use <TH> at all if the table is a layout table.
![]()
Provide summaries for tables
![]()
When a HTML page is displayed without style sheets, it must still be possible to read the document. Content should stiill appear in a meaningful order when the style sheets are turned off. It is expecially important to check this where style sheets are used for layout.
Pages must still work when scripts (javascript) and applets are turned off. If this is not possible, an alternative page should be supplied. Scripts must not require a mouse to function - they must be device independant.
Do not have animated elements if avoidable. Where it is not avoidable, the user must be able to turn them off.
When an embedded object (flash, shockwave, applets) has its "own interface", the interface itself must be accessible. If the interface of the embedded object cannot be made accessible, an alternative accessible solution must be provided.
Provide client-side image maps instead of server-side image maps.
For scripts, don't specify device-dependent event handlers (choose onFocus rather than onMouseover)
Provide keyboard shortcuts to important links by using the access key
attribute.
![]()
Do not cause pop-ups or other windows to appear and do not change the current window without informing the user. Give each form element a label - this makes it easier for motor impaired people to select it.
![]()
Include default, place-holding characters in edit boxes and text areas, otherwise some screen readers may not 'see' it.

Include non-link, printable characters, normally a dash or a comma, between adjacent links.
![]()
Use the latest W3C WCAG guidelines. If you cannot make an accessible page, create another page with the same content that is accessible. Be sure to update this page as often as the other..
Group related information and title elements.
![]()
Include page titles
![]()
Links should have informative text. Don't use 'click here'.
Provide an image map to aid orientation. Group links together where possible and provide a skiplink so this can be easily bypassed. Use navigation consistently - don't change link styles or navigation bar position.
![]()
Use clear and simple language - this means that almost everybody will be able to understand your content. Keep page style consistent.
Accessibility testing is available free at the following sites:
http://bobby.watchfire.com - BOBBY
http://webXact.watchfire.com - webXact
http://www.aprompt.ca / http://aprompt.snow.utoronto.ca - aPrompt
http://www.usablenet.com - LiFT
http://www.wave.webaim.org - WAVE
http://www.freedomscientific.com - JAWS
http://www.vischeck.com - VisCheck
http://www.alphaworks.ibm.com/tech/adesigner - aDesigner
Further information on accessibility issues is available at:
http://www.w3.org/TR/WAI-WEBCONTENT - WAI WCAG 1.0
or by doing a search for "web accessibility" in google.