【发布时间】:2019-03-17 10:27:01
【问题描述】:
我正在尝试实现一种效果,我将在其中创建带有背景图像的 div,其中包含内容。此内容应该是具有相同图像但模糊的 flex 定位 div(同时保持其与父级的相对位置)。
在寻找救赎的过程中,我发现 CSS 规则的某些组合可以产生这种确切的效果,但仅限于 Chrome。
.container {
width: 320px;
height: 240px;
position: relative; /* it is required */
display: flex; /* it is required */
background: url(https://loremflickr.com/cache/resized/4848_46406748211_5572c760e0_320_240_nofilter.jpg);
}
.mask {
z-index: 1; /* it is required */
overflow: hidden; /* it is required */
width: 150px;
height: 150px;
border-radius: 1px; /* it is required */
}
.element {
background: url(https://loremflickr.com/cache/resized/4848_46406748211_5572c760e0_320_240_nofilter.jpg);
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
filter: blur(5px);
}
<div class="container">
<div class="mask">
<div class="element"></div>
</div>
</div>
https://jsfiddle.net/39um580g/16/
这太荒谬了。有没有办法让这个解决方案跨浏览器?
Moorthy G 的回答:
【问题讨论】:
-
我会说 chrome 在这里是错误的。该元素相对于上一个元素定位,因此溢出不应应用于它
标签: html css google-chrome image-masking