该<dialog>元素现已跨浏览器兼容(自2022 年 3 月起)。
我今天尝试了一下并熟悉了:
超文本标记语言
<dialog>JavaScript
.show().showModal().close()CSS
::backdrop一切看起来都很简单,但到目前为止我无法实现的一件事是:淡出背景。
例如,如果我希望背景的最终颜色为:
background-color: rgba(0, 0, 63, 0.8);但有它transition(或animate)来自background-color:
background-color: rgba(0, 0, 0, 0);这可能吗?
这是我的(非工作)示例:
const myButton = document.querySelector('button');
const myDialog = document.querySelector('dialog');
const requestDialog = () => {
myDialog.showModal();
setTimeout(() => myDialog.classList.add('fadeUp'), 400);
}
myButton.addEventListener('click', requestDialog, false);Run Code Online (Sandbox Code Playgroud)
body {
display: flex;
justify-content: center;
align-items: center;
height: 180px;
}
button {
position: absolute;
top: 6px; …Run Code Online (Sandbox Code Playgroud)