How to Create a Modal Box using HTML CSS and JavaScript? Last Updated : 10 Oct, 2024 Comments Improve Suggest changes Like Article Like Report We will learn how to create a modal dialog box using HTML, CSS, and JavaScript. A modal is a pop-up dialog that appears on top of the main content and requires the user to interact with it before returning to the main screen.Approach to Create Modal BoxHTML Structure:Create a button that opens the modal.Design the modal with two main parts: the overlay and the modal content.Add a title, content, and a close button to the modal.CSS Styling:Style the modal to appear centered on the screen.Initially set the modal to be hidden by using display: none.Style the overlay to cover the entire viewport.JavaScript Functionality:Add event listeners to open the modal when the button is clicked.Add event listeners to close the modal when the close button or overlay is clicked.Example: In this example, we will use the above approach. HTML <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="styles.css" /> <title>Page Title</title> </head> <body> <div class="open-modal-btn-wrapper"> <button class="open-modal-btn"> Open Modal </button> </div> <div class="modal-overlay hide"> <div class="modal-wrapper"> <div class="close-btn-wrapper"> <button class="close-modal-btn"> Close </button> </div> <h1>GeeksforGeeks</h1> <div class="modal-content"> Greetings from GeeksforGeeks </div> </div> </div> <script src="index.js"></script> </body> </html> CSS .modal-overlay { background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; position: fixed; top: 0; bottom: 0; left: 0; right: 0; } .modal-wrapper { width: 300px; height: 300px; background: ghostwhite; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); } .open-modal-btn-wrapper { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); } .close-modal-btn, .open-modal-btn { padding: 8px; background: slateblue; font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 15px; color: ghostwhite; font-weight: 5px; margin-left: auto; margin-top: 10px; margin-right: 10px; cursor: pointer; } .close-btn-wrapper { display: flex; } .modal-content { margin: 20px auto; max-width: 210px; width: 100%; } .hide { display: none; } h1 { text-align: center; } JavaScript const openBtn = document.querySelector(".open-modal-btn"); const modal = document.querySelector(".modal-overlay"); const closeBtn = document.querySelector(".close-modal-btn"); function openModal() { modal.classList.remove("hide"); } function closeModal(e, clickedOutside) { if (clickedOutside) { if (e.target.classList.contains("modal-overlay")) modal.classList.add("hide"); } else modal.classList.add("hide"); } openBtn.addEventListener("click", openModal); modal.addEventListener("click", (e) => closeModal(e, true)); closeBtn.addEventListener("click", closeModal); Output:Modal using Javascript,HTML and CSS Comment More infoAdvertise with us Next Article How to Create a Modal Box using HTML CSS and JavaScript? sakshi_srivastava Follow Improve Article Tags : JavaScript Web Technologies CSS HTML-Questions CSS-Questions JavaScript-Questions +2 More Similar Reads How to create Popup Box using HTML CSS and JavaScript? Creating a popup box with HTML, CSS, and JavaScript improves user interaction on a website. A responsive popup appears when a button is clicked, featuring an HTML structure, CSS for styling, and JavaScript functions to manage visibility.ApproachCreate the Popup structure using HTML tags, Some tags a 3 min read How to create a Popup Form using HTML CSS and JavaScript ? To create a popup form using JavaScript, you can design a hidden overlay that becomes visible when triggered. We will use HTML for form elements, CSS for styling, and JavaScript to toggle the visibility of the overlay. This allows for a user-friendly and interactive way to display forms on your webp 3 min read How to Create Popup Box using HTML and CSS? Popups are useful for displaying alerts, forms, notifications, or additional information. Here are three common methods to create a popup box:1. Using Display PropertyThis method toggles the popup's visibility by changing its CSS display property.HTML<html> <head> <style> .popup { 3 min read How to create Cookie Consent Box using HTML CSS and JavaScript ? In this article, we will see how cookies are stored using the cookie consent box using HTML, CSS, & JavaScript.Cookies are small pieces of data that are stored on a user's device while browsing the website. Cookies are used to store information for faster access to data and provide a better user 4 min read How to Create Responsive Modal Images using CSS & JavaScript? Modal images provide an interactive way to display larger versions of images without navigating away from the current page and it takes user attention and users can stay on our website some more time. PreviewApproachFirst, create a basic HTML layout for your image gallery and modal pop-ups. Each ima 4 min read How to Create Image Lightbox Gallery using HTML CSS and JavaScript ? A lightbox gallery is basically used to view the gallery images in detail specifically. You can code the JavaScript to do so but also we can use some downloaded JS and CSS. In this article, we will download the lightbox and attach the JS and CSS files into our code. For our own design satisfaction, 3 min read Create ChatGPT Template using HTML CSS & JavaScript Create a customizable ChatGPT interface using HTML, CSS, and JavaScript. Implement features like message input, display area, and toggle buttons for themes. Customize styles and interactions to suit your preferences and requirements. Prerequisites:HTMLCSSJavaScriptApproachCreate a new HTML file and 7 min read How to create Delete Modal Card using JavaScript and Tailwind ? Create a delete confirmation modal with Tailwind CSS, a utility-first framework for building modern user interfaces. This modal features customizable button styling, modal content layout, and success message display, providing a seamless user experience. Utilize Tailwind's classes to effortlessly de 2 min read Create a Delete Modal using HTML and CSS This article will show you how to create a delete confirmation modal using HTML and CSS. The delete confirmation modal is used to display the popup confirmation modal before deleting the element. Create a Delete ModalHere, we use HTML to create the modal structure, and CSS add styles to the modal bo 2 min read Create a Draggable Bottom Sheet Modal in HTML CSS & JavaScript In this article, we'll create a versatile draggable bottom sheet modal using HTML, CSS, and JavaScript. A bottom sheet modal is a UI component that can be dragged up or down to reveal or hide content. We'll cover the entire process of creating this interactive element, which can be useful for variou 3 min read Like