Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Criando uma popup com HTML5, CSS e JQuery

01/09/2017

Na vídeo-aula de hoje aprenderemos como centralizar uma div ou popup na tela do nosso navegador ou dispositivo. Para isso, criaremos três arquivos:

  1. Arquivo de marcação (index.php)
  2. Folha de estilos (stylesheet.css)
  3. Biblioteca JQuery (jquery-2.1.4.js)
  4. Javascript (javascript.js)

Centralizando div no HTML5 (index.php)

Vamos iniciar linkando nossos arquivos externos e criando a div pai container, a div popup e o botão que acionará o evento, a div login.

<!doctype html>
<html lang="pt-br">
    <head>
        <link rel="stylesheet" href="stylesheet.css">
        <script src="jquery-2.1.4.min.js"></script><!--Versão 3.1.0-->
        <script src="javascript.js"></script>
    </head>
            
    <body>         
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad at consectetur consequuntur, cumque, cupiditate earum esse excepturi facilis in molestias neque, porro quisquam quos rem saepe sapiente similique tempore voluptates.
        <div class="login">Login</div>
        <div class="popup"><h1>Popup</h1></div>
    </body>
</html>

Estilizando uma popup no CSS (stylesheet.css)

Na nossa folha de estilo em cascata iremos estilizar nossas divs, atribuindo o atributo display none a class popup, visto que só aparecerá mediante um evento JQuery conforme código abaixo:

.container{ width: 100%; }
.popup{position:absolute; width: 30%; height: 200px; background: #CCC; border-radius:10px; padding: 10px; display:none;}
.login{float:left;  background: #333; color: #FFF; font-weight:bold; border-radius: 5px; text-align:center; padding: 20px; cursor:pointer;}

Código javascript para fazer uma popup (javascript.js)

No nosso javascript iremos fazer o código responsável por centralizar a popup na tela mediante um evento.

$(document).ready(function(){
    $('.login').on('click',function(){
        var larguradatela=$(window).width();
        var larguradoelemento=$('.popup').width();
        var alturadatela=$(window).height();
        var alturadoelemento=$('.popup').height();
        var alturadodocumento=$(document).height();
        var left=((larguradatela - larguradoelemento)/2);
        var top=((alturadodocumento - alturadatela)+(alturadatela - alturadoelemento)/2);

        $('.popup').css({
            'display':'block',
            'top':top,
            'left':left
        });

        $('.container').css({
            'background':'#000'
        });

        $('body').css({
            'background': '#000'
        });
    });
});
Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Trocando fotos sem refresh
Nessa vídeo-aula trabalharemos com o tema troca de fotos sem refresh, utilizando HTML5, CSS e JQuery. Esse tipo de sistema é bem comum nos e-commerces.
Saiba mais!
Inserindo aviso de CapsLock no login
Nesta vídeo-aula explicaremos como gerar um aviso de capslock ativado quando o usuário ligar o botão de capslock ao digitar a senha do login.
Saiba mais!
Javascript
Ensinaremos durante as aulas a codificação desta importante linguagem de programação.
Saiba mais!