Popup Personalizado com CSS + JS - Bruno Devx - BR Criativus

post #5407

Popup Personalizado com CSS + JS

Publicado em: 19/06/2024 / Atualizado em: 19/06/2024

Categorias: BlogCSSHTMLJavaScript (JS)JS

Com este código abaixo é possível criar um popup personalizado rapidamente em sua pagina.

<a href="#" class="openPopupBtn">Abrir popup</a>

<div id="popup" class="popup">
	<div class="popup-content">
		<span id="closePopupBtn" class="close">&times;</span>
		SEU CONTEÚDO AQUI!
	</div>
</div>

<style>
.popup {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
		z-index: 9999;
}

.popup-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 32px;
    border: 1px solid #888;
    width: 80%;
    box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.2);
    animation: fadeIn 0.5s;
    max-width: 600px;
    border-radius: 10px;
    position: relative;
}

@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity: 1;}
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    position: absolute;
    right: 20px;
    top: 10px;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}
</style>

<script>
document.addEventListener("DOMContentLoaded", function() {
    var popup = document.getElementById("popup");
    var openPopupBtns = document.querySelectorAll(".openPopupBtn");
    var closePopupBtn = document.getElementById("closePopupBtn");

    openPopupBtns.forEach(function(btn) {
        btn.addEventListener("click", function(event) {
            event.preventDefault();
            popup.style.display = "block";
        });
    });

    closePopupBtn.addEventListener("click", function(event) {
        event.preventDefault();
        popup.style.display = "none";
    });

    window.addEventListener("click", function(event) {
        if (event.target == popup) {
            popup.style.display = "none";
        }
    });
});

</script>

Publicações recomendadas:



Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato