Javascript 如何使用css制作透明的feather pref
我想给一些图片添加一个羽毛。这就是我想要的结果: 我意识到这个问题以前已经发布过,并且我已经使用Javascript 如何使用css制作透明的feather pref,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想给一些图片添加一个羽毛。这就是我想要的结果: 我意识到这个问题以前已经发布过,并且我已经使用框shadow attr查看了选项。我觉得这个方法有问题。我将把这张图片放在webm上,这样背景就不会一直保持不变了。这就是为什么我必须使羽毛透明,我还没有运气!这在CSS中是否可行?这是迄今为止我使用长方体阴影时得到的结果: 正文{ 背景:绿色; } div{ 背景:红色; 宽度:200px; 高度:142px; 位置:相对位置; 内容:“; 位置:绝对位置; 排名:0; 右:0; 底部:0;
框shadow attr
查看了选项。我觉得这个方法有问题。我将把这张图片放在webm
上,这样背景就不会一直保持不变了。这就是为什么我必须使羽毛透明,我还没有运气!这在CSS中是否可行?这是迄今为止我使用长方体阴影时得到的结果:
正文{
背景:绿色;
}
div{
背景:红色;
宽度:200px;
高度:142px;
位置:相对位置;
内容:“;
位置:绝对位置;
排名:0;
右:0;
底部:0;
左:0;
-webkit盒阴影:插入0 0 18px 20px#fff;
盒影:插入0 0 18px 20px#fff;
}
您可以使用以下功能:
HTML:
我希望它能帮助你…你可以用javascript来实现,这里是我刚刚制作的一个简单的jQuery插件,它可以处理背景图像和某些标记 它不是一个完整的、经过测试的插件,我只是在几分钟内完成了它,用几行代码展示了这个概念
$.fn.blurry = function(amount) {
amount = amount || 10;
return this.each(function() {
var els = [];
for (var i = amount; i--;) {
var el = $('<' + this.tagName + '/>'),
a = amount - i;
el.css('cssText', this.style.cssText);
el.css({
position : 'absolute',
top : $(this).position().top + a,
left : $(this).position().left + a,
height : $(this).height() - (a*2),
width : $(this).width() - (a*2),
opacity : 1/i,
backgroundPosition : '-' + a + 'px -' + a +'px'
});
els.push(el);
}
$(this).parent().append(els).end().remove();
});
}
$.fn.furry=函数(金额){
金额=金额| | 10;
返回此值。每个(函数(){
var-els=[];
对于(var i=金额;i--;){
变量el=$(''),
a=金额-i;
el.css('cssText',this.style.cssText);
el.css({
位置:'绝对',
top:$(this).position().top+a,
左:$(this).position().left+a,
高度:$(this).height()-(a*2),
宽度:$(this).width()-(a*2),
不透明度:1/i,
背景位置:'-'+a+'px-'+a+'px'
});
推(el);
}
$(this.parent().append(els.end().remove());
});
}
这里有一个我发现SVG过滤器是有效的。它确实改变了图像边缘的不透明度,因此它可以处理改变颜色的背景和非固体的背景。它还使用图像的不透明度,因此可以处理非矩形图像 它可以在最新版本的Chrome、Firefox和Edge上运行,但我还没有在IE、Safari或Opera上测试过它,所以如果它可以/不可以,请随时发表评论。for
过滤器
表明,只要IE中包含-ms-
前缀,它就应该适用于所有最新版本
正文{
背景:url('https://lorempixel.com/800/800/abstract');
背景尺寸:封面;
}
img{
-ms过滤器:url(#feather);
过滤器:url(#feather);
}
只要约束是“使用CSS”,我认为这是不可能做到的。使用一些HTML和CSS剪辑掩码可以很容易做到。没有约束,现在更改了标题这与Rein在问题中的不同之处是什么?看起来是一样的,只是标签不同而已
figure{
position: relative;
display: inline-block;
}
figure figcaption{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
box-shadow: inset 0 0 18px 20px #fff;
}
$.fn.blurry = function(amount) {
amount = amount || 10;
return this.each(function() {
var els = [];
for (var i = amount; i--;) {
var el = $('<' + this.tagName + '/>'),
a = amount - i;
el.css('cssText', this.style.cssText);
el.css({
position : 'absolute',
top : $(this).position().top + a,
left : $(this).position().left + a,
height : $(this).height() - (a*2),
width : $(this).width() - (a*2),
opacity : 1/i,
backgroundPosition : '-' + a + 'px -' + a +'px'
});
els.push(el);
}
$(this).parent().append(els).end().remove();
});
}