para esa clase de estructuras podes hacer
Código:
BODY {
margin: 0px;
padding: 0px;
text-align: center;
}
#content {
text-align: left;
width: 800px;
margin-left: auto;
margin-right: auto;
}
#header {
// no hace falta especificar ancho
}
#main {
float: left;
width: 500px;
}
#mnu-right {
float: left;
width: 300px;
}
#footer {
width: 800px;
float: left;
clear: both;
}
recorda, cuando apliques paddings y definas un ancho... las cosas no van a quedar como lo esperado. Si usas una cosa trata de obviar la otra.