使用原生标签创建对话框最直接且优雅,它语义化强、可访问性好,通过showModal()实现模态阻断交互,show()用于非模态场景,配合简化关闭与返回值处理,CSS可定制样式及::backdrop背景效果。

HTML 文档中创建对话框,最直接、也是我个人认为最优雅的方式,就是利用原生的
标签。它提供了一套内置的、语义化的解决方案,省去了我们自己从零开始构建模态框的诸多麻烦,尤其是它在可访问性方面做了很多开箱即用的优化。解决方案
要创建 HTML 对话框,核心就是使用
元素。它本身只是一个容器,默认是隐藏的。要让它显示出来,我们需要借助 JavaScript 的力量,通常是调用它的show()或
showModal()方法。
一个基本的
结构可能长这样:接着,我们需要一些 JavaScript 来控制它的显示和隐藏:
const openDialogBtn = document.getElementById('openDialogBtn');
const myDialog = document.getElementById('myDialog');
openDialogBtn.addEventListener('click', () => {
// myDialog.show(); // 非模态对话框,不会阻断用户与页面其他部分的交互
myDialog.showModal(); // 模态对话框,会阻断用户与页面其他部分的交互,并创建一个半透明背景
});
// 对话框内的表单提交或按钮点击可以关闭对话框
// 如果使用










