A mio avviso, e dalla mia esperienza, i layout liquidi sono la soluzione più flessibile per l'utenza del sito, a discapito però della grafica.

Mi permetto però di dissentire riguardo all'utilizzo delle dimensioni in percentuale. Danno parecchi problemi, e non sono la soluzione migliore.

Se vuoi realizzare un sito che si adatta automaticamente alla risoluzione dell'utente e alle sue preferenze di testo, l'unità di misura che devi usare sono gli em.

Ti metto un CSS di esempio, provalo:

body
{
margin : 0;
padding : 0;
}

#colsx, #centro, #coldx
{
top : 1em;
bottom : 1em;
}

#colsx, #coldx
{
position : absolute;
width : 8em;
border : 0.1em solid black;
}

#colsx
{
left : 1em;
}

#coldx
{
right : 1em;
}

#centro
{
position : absolute;
left : 10em;
right : 10em;
border : 0.1em solid red;
}

e l'html è semplicissimo, all'interno del body metti
<div id="colsx"></div>
<div id="centro"></div>
<div id="coldx"></div>

Fammi sapere cosa ne pensi, ciao

Edit: dimenticavo una nota importante Specificando, come ho fatto nell'esempio, la proprietà bottom : 1em agli elementi, si adatteranno all'altezza del browser lasciando 1em di spazio in fondo, però nel caso che il contenuto superi la lunghezza del blocco, invece di "allungarlo", il contenuto uscirà dai bordi. Se vuoi evitare questo problema, puoi togliere la proprietà bottom, in questo modo però i blocchi avranno sempre l'altezza minima relativa al loro contenuto.

Vedi tu quale soluzione si adatta meglio al sito che stai facendo