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.

Structure

  • 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 http://www.htmlchecklist.com/

About the Author

Vadim Nareyko, CEO of CalidStyle