Tables are specialized HTML markup that is meant to be used only for the display of data. Tables should not be used for page layout. A table is necessary when data needs to be shown in a such a way that it interrelates. In other words there need to be two or more levels of relationship drawn between data to require the use of a table. Data that only requires a single column should be rendered as an unordered list.


When a sighted user fills out a form, they go through the process of filling in a field, tabbing over to the next field and filling it out until the form is completed. This is easy for visual users since the labels are placed in a way that they seem to be linked to each of the fields. For someone who is blind and/or using a screen reader, the visual layout will not be helpful and though they can see each of the input fields, they might not know what label is associated with that field.

Heading Structure

People who use assistive technologies such as screen readers are able to browse through the "sections" of a website only through the use of headings and sub-headings (h1-h6) that give an invisible structure to the page. Without headings, web resources appear as one long paragraph to screen reader users. Consequently, locating and understanding information is difficult.