HTML checklist: Check your HTML

Written on 01 May, 2006 by Vadim Nareyko
Categories Web Design & Content

We use this document for checking our results after any HTML cutting. I hope that it’ll help any new and experienced developers.

Structure and Visualisation

  • Do not use <font> element.
  • Move arrangement attributes (align, valign, width, height) to CSS.
  • Do not use tables except showing table data. Using tables for visual formatting is acceptable in complex situations only. Max table nesting can not be great than 3.
  • Move attribute “background” to CSS.
  • Design of input fields and buttons must be written as class in CSS.
  • Style table must be written as external file and linked using <link>
  • All images related to design (not content) move to block with style {background: transparent url(“gif”) no-repeat;}

HTML code

  • If table cell contains only image with width and height, then don’t use these attributes for cell.
  • Use minimum cols and rows for tables.
  • All <image> elements must have “width” and “height” attributes.
  • All <image> elements, which are not links, don’t have “border” attribute.
  • All attributes values must be placed in double quotes.
  • All tags and attributes names must be in low case.

CSS code

  • Unique elements must have “id” attribute, which is used for style. Repeated elements must use classes.
  • Determine Links style through styles of (td {}, td a {}, td a:hover {}). a:hover must redefine only changed attributes.
  • Determine background color for <body>
  • Split declarations to groups (fonts, tables, text blocks, divs)
  • Determine geometrical dimensions in percents or pixels.
  • All colour values must be as short as possible and in high case (#FFF instead of #ffffff).
  • All tags and attribute names must be in low case.
  • All margins and indents must be defined for all browsers.
  • All classes and identifiers must be named logically with one naming convention.


  • Use title, description and keywords in header.
  • All elements with closing tags must have it (ideally, use XHTML 1.0 Transitional/Strict).
  • Use alt attribute for <image>. If images don’t have semantic meaning, alt must be empty.
  • Use comments before main blocks.
  • Use standard tags for creating text structure (<h1>-<h4>, <p>, <ul>, <ol>, <li> and so one).
  • Vertical and horizontal menus must be defined using <li>.
  • Don’t use <b>; and <i>. Use <strong> and <em>.
  • Blocks must be placed in document in the descending order of importance. Blocks location can be defined using CSS.

You can discuss and improve this document at

About the Author

Vadim Nareyko, CEO of CalidStyle

Looking for some help with domains, hosting, web design or digital marketing?

Send me marketing tips, special offers and updates