Here are the basic steps to make your next website POSH:
- validate your (X)HTML - invalid markup is not very POSH at all;
- use tables only for tabular data, never for layout;
- use existing elements and attributes if they fit the semantics of what you're creating (e.g. ul, li, dl, dt, dd) instead of generic div or span elements;
- use class and id names that are semantic, not presentational (e.g. MainNav is semantic but LeftNav implies presentation and is not so POSH);
- use as little (X)HTML as possible to markup your content.