dialog 默认不渲染,必须调用 showmodal() 才激活模态行为;仅设 open 属性仅初始可见但无遮罩、不锁焦点;showmodal() 是唯一推荐方式,支持 backdrop、焦点锁定和 esc 关闭。

dialog 标签不会自动显示,写了就以为能弹出来——这是最常踩的坑。它默认不渲染、不占布局、不响应交互,必须调用 showModal() 才真正激活模态行为。
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
为什么写了 dialog 却完全看不到?
因为 dialog 默认 display: none,浏览器跳过布局和绘制,连 getBoundingClientRect() 都返回空值。不是 CSS 没写对,是根本没“启动”它。
- 仅加
open属性(如<dialog open></dialog>)可初始显示,但无 backdrop、不锁焦点、不响应 Esc —— 它只是“可见”,不是“模态” -
open属性只影响初始化状态,不是控制接口;设dialog.open = false后弹窗仍在,showModal()才是唯一可靠的打开方式 - 脚本执行早于 DOM 解析会报
Cannot read property 'showModal' of null,需确保在DOMContentLoaded后获取元素,或把<script></script>放在
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










