Los floats, son los que no te permiten aplicar un margin-top, quita esos floats, y utiliza "display:inline-block;" y "vertical-align:top;", y te funcionara prácticamente "igual", ademas podras aplicar el margin que desees.
Borras los floats y agregas esto:
Código:
#menu1, #menu2, #menu3 {
display:inline-block;
vertical-align:top;
}
Y para agregarle un margen, con este código lo logras:
Código:
#caja2
{
width:900px;
height:250px;
background-color:#405;
margin-left:auto;
margin-right:auto;
margin-top:50px;
padding-top:20px;
}
Espero que te funcione, ya que a mi me funciona.