Skip to main content Skip to secondary navigation

Tables

Main content start

Tables are a great option to provide a structured way of showing large amounts of information and they make organizing information in a clean and readable way very easy. Tables should only be used for tabular data, not for layout or positioning items like images next to text.

Components of an accessible table contain the following:

  • Title
  • Caption
  • Table row and/or column headers
  • Information/Data

Use tables for tabular data

Only use tables for communicating tabular data (like charts of statistics), not for page layout. The content in tables can appear awkwardly on tablet and mobile browsing.

Use row and column headers

When creating a table, it is required for accessibility to include table headers (both row and column headers) that properly label the information its relative column and row contains. As stated within the Web Accessibility Tutorials — Table Concepts:

Header cells must be marked up with <th>, and data cells with <td> to make tables accessible. For more complex tables, explicit associations may be needed using scope, id, and headers attributes.

The lack of table headers violates the WCAG 2.1 1.3.1 Info and Relationships standard.

For more information regarding Table Accessibility, please check out the following:

Create a table

  1. In the Text Area, click the table icon:
  1. Decide how many rows and columns you want.
  1. Add table header and column. For your table to be accessible, unless you're creating a calendar, you'll want both a table header row and column.
  2. Delete the width and height properties (Drupal will fill the max-width based on the display device).
  3. Click OK.

Edit a table

Right-click an existing table to edit cells and the number of rows and columns. *Learn how to customize the look and feel of your tables using utility classes.

Add a column headers

To create column headers: 

  1. Select the Column icon. 
  2. Look for the Header column toggle. Column headers are added when the toggle is slid to the right. 
  3. If not already on the right, click the toggle. 
No column headers

 

Column headers added

Add row headers

To create row headers: 

  1. Select the Row icon. 
  2. Look for the Header row toggle. Row headers are added when the toggle is slid to the right. 
  3. If not already on the right, click the toggle. 
No row headers
Row headers added

Insert before or after a table

If you need to insert just before or after a table: 

  1. Click on the table and a yellow outline around the table will appear with two arrows
  2. To insert before the table, click on the top arrow
  3. To insert after the table, click on the bottom arrow

Example table

Here is an example of content that is suitable for an HTML table. 

Olympic Medals, country by the year
YearUSACHNRUS
20121048882
200811010072
20041036292

By default, the table layout is responsive to the user's screen size and will fold into a two-column layout with headers on the left for a viewport that is 640px or less.

table in mobile view

*Resize your viewport to across the 40em (640px) breakpoint to see the responsive table style. 

Related Topics

Using symbols such as icons to augment the text on your website can improve comprehension and clarify your message.