Ir para conteúdo
Fórum Script Brasil
  • 0

Centralizar Div Na Tela Dinamicamente


BartS

Pergunta

Eu quero que quando o usuário clique no link o div vá para o centro da janela, e tem que funcionar tanto com a janela maximizada como não maximizada.

Esse exemplo não tá funcionando mas dá pra entender o que eu quero: EXEMPLO

Tem como fazer isso? Tem que ser dinâmico porque as coordenadas do centro da página podem variar dependendo de onde o cliente "está" dentro da página (por conta da barra de rolagem).

valeu galera!!

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Você quer só posicionar no meio da tela, independente de resoluções?

Não entendi direito. (a parte do clicar :P)

Vê se é isso:

<div style="width: 70%; padding: 5px; margin: 0 auto; background: #f6f6f6; border: 1px solid #ccc">
<p>Conteúdo aqui</p>
</div>

"by eu" XD (aprendi a algum tempo posicionar div independente de resolução e me ajudou bastante)

Ps: Fiz até uma div bonita né... :D (graças aos paddings que ficou bonita)

Link para o comentário
Compartilhar em outros sites

  • 0

opa, uma ideia!

não to podendo testar aqui... não sei se funciona, mas á ideia é por aí!

<html>
<head>
<title>Untitled</title>
<script language="JavaScript" type="text/javascript">
<!--
function centraliza(w,h){
    x = parseInt((screen.width - w)/2);
    y = parseInt((screen.height - h)/2);
   //alert(x + '\n' + y);
    document.getElementById('a').style.top = x;
    document.getElementById('a').style.left = y;
}
//-->
</script>
</head>
<body>
<div id="a" style="width:100px; height:100px; background: #99ccff; border:#0066cc 1px Solid;"></div>
<br><br><br><br><br>
<a href="java script:" onclick="centraliza(100,100);" onmouseover="style.cursor='pointer';">centraliza</a>
</body>
</html>

qqer coisa posta aí!

abraços

Link para o comentário
Compartilhar em outros sites

  • 0
opa, uma ideia!

não to podendo testar aqui... não sei se funciona, mas á ideia é por aí!

<html>
<head>
<title>Untitled</title>
&lt;script language="JavaScript" type="text/javascript">
<!--
function centraliza(w,h){
    x = parseInt((screen.width - w)/2);
    y = parseInt((screen.height - h)/2);
   //alert(x + '\n' + y);
    document.getElementById('a').style.top = x;
    document.getElementById('a').style.left = y;
}
//-->
</script>
</head>
<body>
<div id="a" style="width:100px; height:100px; background: #99ccff; border:#0066cc 1px Solid;"></div>
<br><br><br><br><br>
<a href="java script:" onclick="centraliza(100,100);" onmouseover="style.cursor='pointer';">centraliza</a>
</body>
</html>

qqer coisa posta aí!

abraços

Perfeito. Apenas sugiro que ao invés de usar screen.width e screen.height use document.documentElements.clientWidth e document.documentElements.clientHeight, já que screen.* pega a resolução de tela e não a resolução da janela do navegador. Caso não funcione dentro da função tente passar como parâmetro ao chamar a função.

Editado por Paulo Alonso
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...