Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

วิธีสร้าง Responsive Modal Images ด้วย CSS และ JavaScript


โค้ดต่อไปนี้เป็นการสร้าง Responsive Modal Images ด้วย CSS และ JavaScript

ตัวอย่าง

<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> *{    box-sizing: border-box; } h1{    text-align: center; } .ImgThumbnail {    margin-left: 38%;    border-radius: 5px;    cursor: pointer;    transition: 0.3s;    height: 250px;    width: 250px; } .modal {    display: none;    position: fixed;    z-index: 1;    padding-top: 100px;    left: 0;    top: 0;    width: 100%;    height: 100%;    overflow: auto;    background-color: rgb(0,0,0);    background-color: rgba(0,0,0,0.9); } .modalImage {    margin: auto;    display: block;    width: 50%;    height: 60%;    max-width: 700px; } #caption {    margin: auto;    display: block;    width: 80%;    max-width: 700px;    text-align: center;    color: #ccc;    padding: 10px 0;    height: 150px; } .close {    position: absolute;    top: 15px;    right: 35px;    color: #f1f1f1;    font-size: 40px;    font-weight: bold;    transition: 0.3s; } .close:hover, .close:focus {    color: rgb(255, 0, 0);    cursor: pointer; } @media only screen and (max-width: 700px){    .modalImage {       width: 100%;    } } </style> </head> <body> <h1>Image Modal Example</h1> <img class="ImgThumbnail" src="https://images.pexels.com/photos/3540375/pexels-photo-3540375.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940"    alt="Snow" style="width:100%;max-width:300px"> <div class="modal"> <span class="close">×</span> <img class="modalImage" id="img01"> <div id="caption">mage 1</div> </div> <script> var modalEle = document.querySelector(".modal"); var modalImage = document.querySelector(".modalImage"); let wow; document.querySelector('.ImgThumbnail').addEventListener('click',(event)=>{    modalEle.style.display = "block";    modalImage.src = event.target.src; }) document.querySelector(".close").addEventListener('click',()=>{    modalEle.style.display = "none"; }) </script> </body> </html>

ผลลัพธ์

โค้ดข้างต้นจะสร้างผลลัพธ์ดังนี้

วิธีสร้าง Responsive Modal Images ด้วย CSS และ JavaScript

เมื่อคลิกที่รูปภาพ Modal จะเปิดดังนี้

วิธีสร้าง Responsive Modal Images ด้วย CSS และ JavaScript