在网页设计中,你可以使用模态窗口做很多事情。它们非常有用,可以吸引网站访问者的注意力,并将其用于任何目的,如提醒对话框、登录表单、联系表单等。
在本教程中,我将向您展示如何使用HTML、CSS和一点jQuery来创建一个在单击时打开的最小的干净模式窗口。
1.为模式窗口编写HTML代码。
<div class="modal" id="example"> <div class="inner_modal"> <div class="modal_content"> <h1>Modal Title</h1> <p>Modal Content</p> </div> </div> </div>
2.在页面上创建一个模式触发按钮。
<button open-modal="true" modal-id="example"> Open Modal </button>
3.设置背景覆盖的样式。
.modal { width: 100vw; height: 100vh; background-color: rgba(16, 16, 16, 0.8); position: fixed; top: 0; z-index: 999; display: none; opacity: 0; } .modal.active { display: block; opacity: 1; } .modal .inner_modal { max-height: 100vh; box-sizing: border-box; display: block; overflow-y: auto; height: 100%; width: 100%; padding: 0 20px; }
4.设置模式窗口的主要内容的样式。
.modal .modal_content { width: 600px; max-width: 100%; background-color: white; display: block; margin: 5vh auto; padding: 50px; }
5.当内容太长时,隐藏滚动条,但保留功能。
.modal .inner_modal::-webkit-scrollbar { display: none; }
6.在文档中加载必要的jQuery JavaScript库。
<script src="/path/to/cdn/jquery.slim.min.js"></script>
7.启用触发按钮以打开模式窗口。
function closeModal(modal) { modal.removeClass('active'); } function openModal(modal) { modal.addClass('active'); } $('*[open-modal="true"]').click(function() { var modal = $(this).attr('modal-id'); openModal($(`.modal#${modal}`)); }); $('.modal').click(function(e) { var clickTarget = $(e.target); if (clickTarget.attr('class') == 'inner_modal') { closeModal(clickTarget.closest('.modal')); } });