Aqui está a solução que finalmente encontrei ao usar uma div como um contêiner para um plano de fundo dinâmico.
- Remova
z-index
para usos não em segundo plano.
- Remova
left
ou right
para uma coluna de altura total.
- Remova
top
ou bottom
para uma linha de largura total.
EDIT 1: O CSS abaixo foi editado porque não foi exibido corretamente no FF e no Chrome. movido position:relative
para estar no HTML e definir o corpo para em height:100%
vez de min-height:100%
.
EDIT 2: Adicionados comentários extras ao CSS. Adicionadas mais algumas instruções acima.
O CSS:
html{
min-height:100%;/* make sure it is at least as tall as the viewport */
position:relative;
}
body{
height:100%; /* force the BODY element to match the height of the HTML element */
}
#cloud-container{
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
overflow:hidden;
z-index:-1; /* Remove this line if it's not going to be a background! */
}
O html:
<!doctype html>
<html>
<body>
<div id="cloud-container"></div>
</body>
</html>
Por quê?
html{min-height:100%;position:relative;}
Sem isso, o DIV do contêiner na nuvem é removido do contexto de layout do HTML. position: relative
garante que o DIV permaneça dentro da caixa HTML quando é desenhado, de modo que bottom:0
se refira à parte inferior da caixa HTML. Você também pode usar height:100%
o contêiner na nuvem, pois agora se refere à altura da tag HTML e não à porta de visualização.