You are here:
- Manual
- Development
- Tables
- Layout
- Advantages and disadvantages
Tables: Advantages and disadvantages of tables for layout
Perceived advantages
- The concept is relatively easy for web developers to understand.
Tables fit in with the idea of markup for presentation, an idea that (unfortunately) is still being taught. Most web developers are actually more at home with using tables than with using the alternative CSS (Cascading Style Sheets). - Most development software offers a great deal of support for the creation of layout using tables.
Fortunately, support for creating layout by means of CSS has vastly improved over the last few years. - Tables for layout ‘work’.
By means of tables, web developers can create a visually attractive layout that works out pleasingly even in old browsers. If only the layout counts, there is no reason to avoid the use of tables.
Disadvantages
- Tables for layout do not comply with the principle of separation of structure and presentation.
Moreover, table markup is used for marking content in unrelated cells; the markup does not describe the content. See also Why descriptive markup is important. - Tables for layout are inflexible compared to CSS for layout.
CSS offers web developers the option to place content in the layout independent of its location in the source code of the document. Tables do not include this option: the sequence in the table markup dictates the restrictions for the document layout. - Tables for layout cost web developers more time.
The layout of the site is included in the markup for the separate pages and not, as with CSS, bundled in one separate file. This markup must be taken into account during the creation and modification of these pages. Such modifications can be performed more quickly in one single CSS file.
Also, the separation of structure and presentation allows the web developer, content manager and possibly the programmer to work on the website more or less independent of one another. - Tables for layout jeopardise problem-free maintenance of the content.
Everyone involved with the content of the page – content managers and web developers – must be able to steer clear of the table markup or to control it. Abuse of table markup is bound to cause damage and result in inconsistent layout. Although controlling tables for layout is not much of a challenge for one person, it is a steeper learning curve than simple, descriptive markup. - If thoughtlessly applied, tables for layout impair the accessibility of a page.
By paying attention to the sequence of the table markup and not using ‘nested tables’, the accessibility of the page can be improved (see also Using tables for layout).
The use of CSS for layout is more effective, but a number of factors can frustrate this solution.
