Skip to content
HTML.dk logo
  • Snippets
  • Tutorials
    • Lav din egen hjemmeside
    • Tjene penge på nettet
    • Guide til HTML
    • Guide til CSS
    • Artikler
  • Nyheder
  • Bidrag til sitet
Søgning

Lækker, responsive modal-popup

  • HTML.dk
  • 10. december 202010. december 2020
  • jQuery / JavaScript snippets

Her er en fuldt responsive modal-boks, som er let at style og ser fint ud på både desktop og mobil.

Den består af en stump javascript, en stump CSS og så selve indholdet i modalen i HTML.

Vi starter med CSSen:

body {font-family: Arial, Helvetica, sans-serif;}

/* Modal-baggrund */
.modal {
  display: none; /* Skjult som standard */
  position: fixed; /* Blive hvor den er */
  z-index: 1; /* Vises oeverst */
  left: 0;
  top: 0;
  width: 100%; /* Fuld bredde */
  height: 100%; /* Fuld dhoejde */
  overflow: auto; /* Scroll hvis nødvendigt (undgaa helst) */
  background-color: rgb(0,0,0); /* Garderings-farve */
  background-color: rgba(0,0,0,0.5); /* Sort - svagt gennemsigtig */
  margin-bottom: 0px;
}

/* Modal-indhold */

@media only screen and (max-device-width : 768px){   
.modal-indhold {
  background-color: #fefefe;
  margin: 15% auto; /* 15% fra top og centreret */
  padding: 10px 10px 10px 10px;
  border: 1px solid #333;
  width: 80%; /* Sat hoejt paa mobil */
  }
}

@media only screen and (min-device-width : 769px){   
.modal-indhold {
  background-color: #fefefe;
  margin: 15% auto; /* 15% fra top og centreret */
  padding: 10px 10px 10px 20px;
  border: 1px solid #333;
  width: 40%; /* Sat lavt paa desktop for at goere det laesevenligt*/
  }
}

/* The Close Button */
.close {
  position: relative;
  top: -12px;
  color: #888;
  float: right;
  font-size: 40px;
  font-weight: bold;
}

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

/* Modal-trigger */

#myTrigger {
  margin-bottom: 0px;
  padding: 0px 0px 4px 0px;
  text-align: left;
  cursor:pointer;
  display: inline;
}

Javascript delen

// Get the modal
var modal = document.getElementById("myModal");

// Get the button that opens the modal
var btn = document.getElementById("myTrigger");

// Get the <span> element that closes the modal
var span = document.getElementsByClassName("close")[0];

// When the user clicks the button, open the modal
btn.onclick = function() {
  modal.style.display = "block";
}

// When the user clicks on <span> (x), close the modal
span.onclick = function() {
  modal.style.display = "none";
}

// When the user clicks anywhere outside of the modal, close it
window.onclick = function(event) {
  if (event.target == modal) {
    modal.style.display = "none";
  }
}

Og så lidt HTML

<button id="myTrigger">I tvivl om hvilken variant du skal vælge?</div>
<div id="myModal" class="modal">
<!-- Modal-indhold -->
<div class="modal-indhold"><span class="close">×</span>
<p style="margin: 0px; padding-right: 10px;">Hvis du ikke er sikker på, hvad du skal vælge, så er du altid velkommen til at kontakte os.</p>
</div>
</div>

Denne snippet blev indsendt af Puretime.dk


Få det økonomiske overblik med et regnskabsprogram
Guide: Vælg den rigtige webshop løsning til din webshop!

Seneste artikler

  • Internet teknologierne – hvad findes der?
  • Træpiller som en bæredygtig og miljøvenlig kilde til energi
  • Sådan finder du de rette rammer for din virksomhed
  • 4 fede WordPress funktioner din hosting-udbyder bør have
  • Få styr på mærkaterne og slip for tidsspild

Mere fra HTML.dk

  • Alle snippets 24
  • Artikler 95
  • CSS snippets 13
  • HTML snippets 4
  • jQuery / JavaScript snippets 6
  • Nyheder 19
  • Scripts 2
  • Tutorials 7
  • Uncategorized 6
  • WordPress snippets 1

Kontakt

HTML.dk
Ceres Allé 7
Aarhus C
Skriv til os

Links

Om HTML.dk
Skriv til os!
Send et bidrag
Nyheder
Snippets

Nyt indhold fra HTML.dk

  • Internet teknologierne – hvad findes der?
  • Træpiller som en bæredygtig og miljøvenlig kilde til energi
  • Sådan finder du de rette rammer for din virksomhed
  • 4 fede WordPress funktioner din hosting-udbyder bør have
  • Få styr på mærkaterne og slip for tidsspild
  • Skab en hyggelig atmosfære med en biopejs

HTML logo big