我想获得一个小的polyfill(https://github.com/heygrady/textshadow)在Internet Explorer上添加文本阴影效果,但似乎无法弄清楚如何使其工作。这是我正在使用的代码:获取IE文本阴影polyfill与Modernizr一起工作
<script src="@Url.Content("~/Scripts/modernizr.custom.61772.min.js")" type="text/javascript"></script>
<script>
Modernizr.load({
test: Modernizr.textshadow,
nope: ['/Content/jquery.textshadow.css', '/Scripts/jquery.textshadow.js'],
complete: function() {
$('h1').textshadow('1px 1px 2px #111')
}
});
</script>
我确实得到一个效果,但它看起来都是错误的。我只是重新结束了原始标题文本,格式与原始文本完全相同,但向底部偏移了一半的高度。
编辑:所以经过一些尝试,我发现,我至少可以得到阴影效果通过手动创建CSS规则的类,而不是依赖于JavaScript这样做,就像这样:
h1 .ui-text-shadow-copy
{
color: #111; /* color */
filter:
progid:DXImageTransform.Microsoft.Blur(makeShadow=false,pixelRadius=2); /* blue */
left: 0px; /* left - blur */
top: 0px; /* top - blur */
}
但定位仍然搞砸了。使用左边的0px和顶部0px,阴影放置在文本下方一半的位置。随着其他任何东西的阴影片散布在页面周围。
问题是,与模糊滤镜相比,Microsoft DropShadow滤镜令人难以置信的难看。这就是我使用这个polyfill而不是DropShadow过滤器开始的原因。 –
你有一些例子吗?以jsFiddle为例。 – antyrat
作者在这里做了一堆比较:http://heygrady.com/blog/2011/03/10/css-text-shadows-in-internet-explorer/ –