Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Cửa sổ popup xuất hiện ở khắp nơi trên Internet. Chúng không hoàn toàn xấu. Dưới đây là cách tạo popup tốt bằng HTML, CSS và JavaScript.

Viết một số code HTML chứa cửa sổ phương thức ẩn bật lên khi bạn click vào một nút bấm. Trong trường hợp này, bạn sẽ hiện một từ có ý nghĩa, như Hello! Cửa sổ popup thường có tiêu đề cùng một số nội dung.
Ngày khi kích hoạt cửa sổ popup, một hiệu ứng mờ sẽ xuất hiện trên nền. Thêm class vào phần bạn dùng để chọn phương thức sau đó trong JavaScript.
<body> <button class="open-modal">Hello!</button> <div class="modal-content hidden-modal"> <div class="modal-header"> <h3>Meaning of Hello!</h3> <button class="close-modal">×</button> </div> <div class="modal-body"> <p>Hello is a greeting in the English language. It is used at the start of a sentence as an introduction whether in person or on the phone.</p> </div> </div> <div class="blur-bg hidden-blur"></div> <script src="script.js"></script> </body>
Trang sẽ hiện như sau:

Dùng CSS để định dạng cửa sổ popup. Đặt cửa sổ ở giữa của trang web trên nền đen, nó sẽ hiển thị rõ ràng. Bạn cũng cần tạo kiểu cho cửa sổ, background và kích thước font.
Đầu tiên, tạo một kiểu thống nhất cho toàn bộ trang bằng cách đặt lề, padding và chiều cao dòng. Sau đó, căn chỉnh các phần tử ở body ở giữa trên background sau.
* {
margin: 0;
padding: 0;
box-sizing: border-box;
line-height: 1;
}
body {
height: 100%;
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
background: #000;
gap: 30px;
}
Tiếp theo, tạo nút open-modal. Tô màu nền khác cho phần còn lại của trang để nó trở nên nổi bật. Ngoài ra, đặt màu font, kích thước, padding và thời gian chuyển tiếp.
.open-modal {
background: #20c997;
color: #fff;
border: none;
padding: 20px 40px;
font-size: 48px;
border-radius: 100px;
cursor: pointer;
transition: all 0.3s;
outline: none;
}
.open-modal:active {
transform: translateY(-17px);
}
Sau đó, tạo kiểu nội dung sẽ hiện khi cửa sổ mở. Đặt nền trắng, đặt chiều dài của nó nhỏ hơn phần body và thêm padding.
Sau đó, cấp z-index cho nó, để nó hiện ở phía trước của nút open-modal. Ngoài ra, đặt hidden-modal hiện ở dạng none. Nó sẽ ẩn cho tới khi bạn kích hoạt.
.modal-content {
background: #ccc;
width: 500px;
padding: 20px;
border-radius: 10px;
z-index: 99;
}
.modal-header {
display: flex;
justify-content: space-between;
margin-bottom: 16px;
color: #000;
font-size: 30px;
}
.modal-body p {
font-size: 22px;
line-height: 1.5;
}
.hidden-modal {
display: none;
}
Sau đó, tạo kiểu nút close-modal với background trong suốt và căn chỉnh nó ở giữa.
.close-modal {
background: transparent;
border: none;
display: flex;
align-items: center;
justify-content: center;
height: 20px;
width: 20px;
font-size: 40px;
}
.close-modal:hover {
color: #fa5252;
}
Cuối cùng, tạo kiểu phần tử blur, sẽ hiện trên nền khi cửa sổ mở. Nó sẽ có chiều cao và rộng tối đa cùng một bộ lọc background. Đặt độ mờ là none để nó khong hiện cho tới khi cửa sổ mở.
.blur-bg {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
background: rgba(0, 0, 0, 0.3);
backdrop-filter: blur(5px);
}
.hidden-blur {
display: none;
}
Sau khi thêm vào CSS, trang sẽ như sau:

Bạn sẽ dùng JavaScript để mở và đóng cửa sổ popup bằng cách hiện hoặc ẩn nó. Thêm trình nghe sự kiện vào nút bấm để kích hoạt nó mở & đóng khi bạn click vào.
Đầu tiên, chọn các phần tử liên quan bằng class CSS mà bạn đã xác định trong HTML:
let modalContent = document.querySelector(".modal-content");
let openModal = document.querySelector(".open-modal");
let closeModal = document.querySelector(".close-modal");
let blurBg = document.querySelector(".blur-bg");
Thêm trình nghe sự kiện vào nút bấm open-modal để nó mở cửa sổ khi bạn click vào.
openModal.addEventListener("click", function () {
modalContent.classList.remove("hidden-modal");
blurBg.classList.remove("hidden-blur");
});
Thực hiện các hành động ngược lại để xử lý đóng popup nhưng lúc này, gói chúng vào một hàm được đặt tên. Hành động này sẽ xử lý hành vi cho nhiều sự kiện có thể khiến cửa sổ popup đóng.
let closeModalFunction = function () {
modalContent.classList.add("hidden-modal")
blurBg.classList.add("hidden-blur")
}
Thêm trình nghe sự kiện để xử lý các click trên nền hoặc nút đóng. Trường hợp này là người dùng nhấn phím Escape.
blurBg.addEventListener("click", closeModalFunction);
closeModal.addEventListener("click", closeModalFunction);
document.addEventListener("keydown", function (event) {
if (event.key === "Escape"
&& !modalContent.classList.contains("hidden")
) {
closeModalFunction();
}
});
Giờ khi click nút Hello!, popup sẽ hiện. Bạn cso thể đóng nó bằng cách nhấn vào nút hủy ở bên phải của cửa sổ.

Thế là xong! Hi vọng bài viết hữu ích với các bạn.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Cách tắt app chạy ngầm Windows 11, giảm ngốn RAM trên Win 11
Câu nói hay nhất về tháng 11, chào tháng 11
TOP công cụ AI tạo tài liệu tốt nhất
Cách xây dựng plugin trong ChatGPT
Hướng dẫn tự thiết kế website Portfolio bằng Claude
5 thiết kế ChatGPT + Canva đáp ứng hầu hết các nhu cầu trong cuộc sống
Những công cụ AI tốt nhất giúp giải toán dễ dàng
Hướng dẫn kết nối Booking.com với ChatGPT lên kế hoạch du lịch
15 prompt Gemini tạo ảnh sinh nhật đẹp nhất
Cách tắt bộ nhớ an toàn trên Messenger
Hướng dẫn kết nối Claude với Figma thiết kế giao diện website
Hướng dẫn sử dụng Canva Grow tạo quảng cáo với AI
TOP phần mềm quay màn hình có hỗ trợ AI
Khóa chat trong ChatGPT: cách bật mã PIN, mở khóa và những giới hạn cần biết
4 lầm tưởng về AI trong công việc và cách kiểm chứng
Mẹo giao việc nhiều bước cho ChatGPT Agent và kịch bản bạn có thể thử
Những lời chúc đầu tuần hay cho cả 7 ngày may mắn
ChatGPT Dots là gì? Cách hoạt động, giá và những điều cần cân nhắc
Karaoke Khóc (Midi)
TOP công cụ AI viết truyện ma, truyện kinh dị hay nhất
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Cách sửa lỗi There Are Currently No Power Options Available Windows
Claude Code thực sự có giá bao nhiêu?
Hướng dẫn 8 cách mở bàn phím ảo trên Windows 10
Hướng dẫn tạo flashcard trên Canva AI