css - IE11 中的模糊效果以创建磨砂玻璃
问题描述
我正在尝试模仿这种磨砂玻璃外观:https ://codepen.io/AmJustSam/pen/ModORY
找出 IE9+ 不支持过滤器:blur(..
在阅读了有关该主题的许多文章和讨论之后,大多数人似乎都指向使用诸如 stackblur 脚本之类的第 3 方选项,除非我可以从 nuget(公司政策)下载它,否则这对我来说不是一个选项。我正在尝试将主体背景图像继承到 div,然后将其模糊以形成磨砂外观。
这在 Firefox 中运行良好:
.frost
{
box-shadow: inset 0 0 0 3000px rgba(255,255,255,0.3);
filter: blur(10px);
overflow: hidden;
background: inherit;
}
但不是 IE11。我遇到的一些 svg 解决方案是用于模糊图像本身。如果可能的话,如何使用 svg 模糊 div 继承的背景?
编辑:虽然建议的副本对我没有帮助,因为它不会修改继承的背景,只会用 SVG 在其上覆盖图像。似乎这可能是唯一的解决方案。因此,使用可能的重复响应中的示例:
svg width="230" height="120" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="svgBlur">
<filter id="svgBlurFilter">
<feGaussianBlur in="SourceGraphic" stdDeviation="5" />
</filter>
<image xlink:href="http://lorempixel.com/400/200" x="0" y="0" height="200" width="400" class="nonblurred" />
<image xlink:href="http://lorempixel.com/400/200" x="0" y="0" height="200" width="400" class="blurred" filter="url(#svgBlurFilter)" />
</svg>
似乎让我朝着正确的方向前进,但图像标签上的图像尺寸以像素为单位。我如何使它动态到以百分比定义的 div 的宽度。
解决方案
推荐阅读
- c# - 无法将图像文件上传到 Firebase Storage Unity C#
- docker - 为什么'docker-compose run'命令与常规'docker build'相比,从同一个Dockerfile构建不同的图像?
- javascript - 如何在功能组件中使用 componentWillReceiveProps
- javascript - 如何访问嵌套但固定的数组和对象结构中的特定属性
- asp.net-mvc - 如何使用反射来获取所有 mvc 页面而不是部分视图
- blazor - Blazor 中的 EditForm:EventCallback 给出错误方法组
- dynamic - NextJs Link 不会重新加载页面但会重新加载组件
- google-sheets - 如何在 Google Sheet 上自动将字符串 YYYY|MM 列转换为日期列 YYYY/MM?
- oracle - 如何为 oracle 数据库中的远程数据库对象正确应用 index_desc 提示?
- python - 从 err KeyError: 'fbs' in different dataset 获取 raise KeyError(key)