When possible, I try to allocate the design part to someone who is actually artistically talented and skilled in graphic arts. 🙂 I know enough HTML/CSS to render a design into a web page (particularly if supplied with any necessary image files), but I don't seem to have much artistic flair and I definitely have not had any training in it to speak of. (There are actually things like color theory, learning which types of fonts generate what sorts of emotions/reactions, etc.)
If I have to do it myself, then I search the web for sites of a similar type to whatever project I'm working on, pick a few that seem to work well for me, then analyze things like what color palette was used (and in what proportions), the general layout, fonts, look and feel, and so on. Then I try to apply those while trying to not do too much: not too many different colors, not too many different fonts (generally no more than 2 font families), not too much different content on one page -- basically a "Keep It Simple, Stupid" approach.
If you want some inspiration, you might poke around at www.csszengarden.com. The vast majority of the designs there are probably overkill for most commercial sites, but they do an excellent job of showing how you can manipulate HTML/CSS to get many different looks with the same underlying HTML mark-up (and there is not a table tag to be seen there).