99 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			99 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: How to Create Popups | ||
|  | --- | ||
|  | ## How to Create Popups
 | ||
|  | 
 | ||
|  | Popup is a window that pops up (appears) when you select an option with a mouse or press a special function key. | ||
|  | 
 | ||
|  | In this example , the popup will appear when you click on a button and will stay on the screen until you press X option. | ||
|  | 
 | ||
|  | We will construct the popup using ```HTML``` , ```CSS``` and ```JavaScript``` | ||
|  | 
 | ||
|  | ### Step 1 HTML
 | ||
|  | 
 | ||
|  | The HTML provides the structure for the popup | ||
|  | 
 | ||
|  | ```html  | ||
|  | <!-- div class="container" will contain the button that will open the popup when I click on it, and the popup window that will appear --> | ||
|  | <div class="container"> | ||
|  |   <button id="Btn">Open The PopUp</button> | ||
|  |   <div class="popup_main_div"> | ||
|  |     <p class="text">Popup with JavaScript</p> | ||
|  |     <div class="close_popup"><p>X</p></div> | ||
|  |   </div> | ||
|  | </div> | ||
|  | ``` | ||
|  | 
 | ||
|  | ### Step 2 CSS
 | ||
|  | We will choose our own style for the popup window. Notice: the popup div should be hidden at first, so in the style I will select display: none;  | ||
|  | 
 | ||
|  | 
 | ||
|  | ```css  | ||
|  | .popup_main_div{ | ||
|  |     position: fixed; | ||
|  |     width: 800px; | ||
|  |     height: 400px; | ||
|  |     border: 2px solid black; | ||
|  |     border-radius: 5px; | ||
|  |     background-color: #fff; | ||
|  |     left: 50%; | ||
|  |     margin-left: -400px; | ||
|  |     top: 50%; | ||
|  |     margin-top: -250px; | ||
|  |     display: none;  | ||
|  | 
 | ||
|  |   } | ||
|  |   .close_popup{ | ||
|  |     position: absolute; | ||
|  |     width: 25px; | ||
|  |     height: 25px; | ||
|  |     border-radius: 25px; | ||
|  |     border: 2px solid black; | ||
|  |     text-align: center; | ||
|  |     right: 5px; | ||
|  |     top: 5px; | ||
|  |     cursor: pointer; | ||
|  |   } | ||
|  |    .close_popup p{ | ||
|  |      margin-top: 5px; | ||
|  |      font-weight: 400; | ||
|  | 
 | ||
|  |    } | ||
|  |    .text{ | ||
|  |      text-align: center; | ||
|  |      font-size: 30px; | ||
|  |      font-weight: 400; | ||
|  |      margin-top: 22%; | ||
|  |    } | ||
|  |    #Btn{ | ||
|  |      position: absolute; | ||
|  |      left: 50%; | ||
|  |      top:20%; | ||
|  | 
 | ||
|  |    } | ||
|  | ``` | ||
|  | 
 | ||
|  | 
 | ||
|  | ### Step 3 JavaScript
 | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | ```js | ||
|  | // First of all I will initialize my variables  | ||
|  | // Select the elements that we will use from the DOM | ||
|  | // I wiil add en event in the button which will trigger a function that will change the popup's display style from none to block | ||
|  | 
 | ||
|  |   const Btn=document.getElementById("Btn") | ||
|  |   const PopupDiv = document.querySelector(".popup_main_div") | ||
|  |   const ClosePopup = document.querySelector(".close_popup") | ||
|  |   Btn.addEventListener('click',function(){ | ||
|  |     PopupDiv.style.display="block" | ||
|  |   }) | ||
|  |   ClosePopup.addEventListener('click',function(){ | ||
|  |     PopupDiv.style.display="none" | ||
|  |   }) | ||
|  | 
 | ||
|  | ``` | ||
|  | 
 | ||
|  | Live code in : [Codepen.io](https://codepen.io/voula12/pen/qyyNeK) |