我试图在位于另一个SVG
<rect>
之上的SVG <rect>
中添加一个背景过滤器。然而,CSS属性backdrop-filter: blur(10px)
和-webkit-backdrop-filter: blur(10px)
似乎对SVG元素无效。当我在两个<div>
上做同样的事情时可以生效。我该如何实现这两个<rect>
的相同效果?
body, html {
margin: 0;
}
.outerrect {
position: absolute;
left: 0px;
top: 120px;
}
.innerrect {
position: absolute;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px);
}
.outerdiv {
position: absolute;
left: 0px;
top: 120px;
width: 200px;
height: 100px;
background-color: red;
}
.innerdiv {
position: absolute;
left: 140px;
top: 20px;
width: 120px;
height: 60px;
border: 1px solid;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px);
}
<svg>
<rect class="outerrect" fill="red" x="0" y="0" width="200" height="100"></rect>
<rect class="innerrect" x="140" y="20" width="120" height="60"></rect>
</svg>
<div class="outerdiv">
<div class="innerdiv"></div>
</div>