css - 是否可以为 HTML5 对话框背景添加模糊效果?

标签 css html dialog css-filters

我正在尝试为 dialog 的背景添加模糊效果(我意识到 dialog 目前只提供有限的支持 - 我使用的是 Chrome v66)。

我试过为 ::backdrop 添加模糊滤镜css(运气不好)和backdrop-filter尚不支持。

有人知道我应该怎么做吗?

window.onload = function() {
  document.getElementById('mydialog').showModal();
}
dialog::backdrop {
  background: rgba(255, 0, 0, .25);
}

/* attempt #1 - using a blur filter */
dialog::backdrop {
  -webkit-filter: blur(2px);
  -moz-filter: blur(2px);
  -o-filter: blur(2px);
  -ms-filter: blur(2px);
  filter: blur(2px);
}

/* attempt #2 - using backdrop-filter */
dialog::backdrop {
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

/* attempt #3 - using an svg */
dialog::backdrop {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100%' height='100%'><defs><filter id='blur'><feGaussianBlur stdDeviation='5' /></filter></defs><rect filter='url(%23blur)' fill='rgba(255,255,255,0.5)' x='0' y='0' width='100%' height='100%'/></svg>");
}
Here is some other text that I want blurred.
<dialog id="mydialog">This is the dialog window</dialog>

最佳答案

使用背景滤镜:

dialog::backdrop {
        backdrop-filter: blur(1px);
}

关于css - 是否可以为 HTML5 对话框背景添加模糊效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51018582/

相关文章:

html - LI 元素向左浮动以便在容器中向右对齐?

HTML5 Canvas 挑战!

jquery - 将自定义 HTML 添加到 jQuery 对话框按钮 Pane

jquery - 如何使 jQuery 对话框仅在单击按钮后才显示?

javascript - 如何使用 html/jQuery UI 正确显示弹出对话框

html - Slim 3 不渲染资源

html - 重置或忽略 CSS 中的(最大)宽度

javascript - 使用缩略图制作模态图像

html - 我无法在自动居中的 div 中正确对齐 div

jquery - Photoswipe 问题 : How do i get multiple images in a gallery to scroll based on one thumbnail?