Le but ici est de construire un site internet qui sera compatible avec les navigateurs actuels et prêt pour le passer en HTML5 et CSS3.

1- Choisir des technologies compatibles avec les navigateurs actuels

Voir sur le site caniuse.com

2- Éviter les attributs non compatibles avec HTML5

Balise(s) concernée(s) :
Attribut(s) à ne pas utiliser avec HTML5 :
link et a rev et charset
a shape et coords
img et iframe longdesc
link target
area nohref
head profile
html version
img (utiliser id à la place) name
meta scheme
object archive, classid, codebase, codetype, declare et stetby
param valuetype et type
td et th axis et abbr
td scope
caption, iframe, img, input, object, legend, table, hr, div, h1, h2, h3, h4, h5, h6, p, col, colgroup, tbody, td, tfoot, th, thead et tr align
body alink, link, text et vlink
body background
table, tr, td, th et body bgcolor
table et object border
table cellpadding et cellspacing
col, colgroup, tbody, td, tfoot, th, thead et tr char et charoff
br clear
dl, menu, ol et ul compact
table frame
iframe frameborder
td et th height
img et object hspace et vspace
iframe marginheight et marginwidth
hr noshade
td et th nowrap
table rules
iframe scrolling
hr size
li, ol et ul type
col, colgroup, tbody, td, tfoot, th, thead et tr valign
hr, table, td, th, col, colgroup et pre width

Source

3- Vérifier la compatibilité des déclarations CSS

Voir sur le site quirksmode.org

Au passage, je signale la page du siteduzero qui compile la liste des propriétés css les plus courantes. (à garder sous la main !).

4- Choisir le bon doctype

Vous pouvez utiliser le générateur de d'alsacreations.com

Vous pouvez déjà choisir d'avoir votre site en HTML5 sans risque, sans utiliser les balises spécifiques au HTML5 qui ne sont pas encore bien supportées. Dans ce cas, un page type serait :

<!DOCTYPE html>
<html lang="fr">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
    <title>Le titre de mon site</title>
    <meta name="description" content="Description de mon site" />
    <meta name="keywords" content="liste de mots clés" />
    <meta name="author" content="Mon nom" />
    <meta name="owner" content="Nom du propriétaire" />
    <meta name="geo.placename" content="Ville, Département, Pays" />
    <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" />
  </head>
  <body>
  </body>
</html>

5- Vérifier que votre site est bien valide

Grâce au validateur du w3.org qui reconnait désormais l'HTML5