Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala Pessoal, estou com um problema que parece ser meio besta mas não consigo resolver nem com CSS nem com JS..
É o seguinte, eu montei aqueles sites que fica tudo dentro de uma div que não ocupa o navegador inteiro entendem?
O problema é o seguinte, eu gostaria de manter o site sempre no centro do navegador, verticalmente falando, só que o problema é que cada navegador tem uma àrea de trabalho de um tamanho..
por exemplo, a do firefox é de um tamanho, a do google chrome é bem maior pois vai até lá em cima... tem umas particularidades também de se o firefox está com abas a posição é diferete.. essas coisas..
tentei com porcentagem no height, mas não vai ficam sempre no mesmo lugar..alguma idéia?
Boas!
Recentemente andei de volta disso, fiz o seguinte no CSS:
body{
margin: 0pt 0pt;
padding: 0pt 0pt;
text-align:center; /* hack para o IE */
}#iContainer{
width:990px;
height:auto;
display:block;
position:relative;
text-align:left; /* "remédio" para o hack do IE */
margin:0 auto;
}Espero que ajude e que este código esteja como deve ser, aproveito para o deixar no sentido de ajudar e para ouvir a vossa opinião.
Bom código ThinkBrunus, realmente essa é a forma correta de colocar o site no centro horizontal.
Como o amigo ali citou vertical, a saída que existe.. é se ele tiver altura fixa para todas as páginas, declarar um position absolute, e dar um top de 50%, e depois deslocar o site para cima, com uma margem negativa, de metade do valor da altura..
E vale lembrar, que o hack de posicionar no centro que você usou para o IE, ai, com text-align center.. e tal.. era para os IE5.x .. apartir da versão 6, ele já começou à interpretar melhor o margin: 0 auto;
Não tenho estatísticas, mas acredito que ninguém mais use IE5.x
Win98 SE, vem com o 6 se não me engano.. o XP já vem com o 6 tb..
Vou experimentar a tua dica!
Abraço
opa, desculpem a demora mas é que no fim de semana não tenho contato com computadores. rs
O meu site não tem alguma fixa não, ele tem é um MIN-height, mas pode crescer conforme o conteudo. Eu tenho todas as medidas em porcentagam para que elas se adaptem conforme a resolução, mas ainda passo por este problema do navegador..
O correto seria posicionar no centro, com um espaço em branco em cima e em baixo.. este espaço em branco variando conforme o tamanho da aba do navegador, resolução e etc
Fala Pessoal, resolvi com um código bem simples, deem uma olhada
function ajustaY(){
if(document.body.clientHeight > document.getElementById('lpDivs').clientHeight){
var sobra = (((document.body.clientHeight - document.getElementById('lpDivs').clientHeight)/2));
document.getElementById('lpDivs').style.marginTop = sobra;
document.getElementById('lpDivs').style.marginBottom = sobra;
}
}
ajustaY();assim, quando ultrapassar o limite do layout ele deixa o alinhamento para os marginbottom e top padrão, quando nao for utiliza a sobre do navegador,
Se funciona assim parece-me um boa solução, até mais complexa.
Porreiro, mais uma alternativa!
Quais são as dimesões do teu site ?
ele tem altura fixa ?