respondiendo a #4
prueba añadiendo mucho contenido a tu codigo:
<html>
<head>
<style>
body{
margin:0px;
}
#main{
background-color:#333;
top:0px;
down:0px;
height:100%;
width:400px;
margin:0 auto;
}
#
</style>
</head>
<body>
<div id="main">
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
asd <-br><-br><-br><-br><-br><-br><-br><-br><-br><-br><-br>
</div>
</body>
</html>
en firefox o en safari :S (los <-br> son saltos de linea normales, que si no no me los coje el foro)
Si el contenido es mas grande que el alto disponible del explorador (sin scroll) peta.
De todos modos, googleando hay bastante información de como arreglarlo, por ejemplo:
http://www.themaninblue.com/experiment/footerStickAlt/