我有一个带边框和框阴影的div:
div.my-div
{
border: 1px solid #555;
box-shadow: 0px 4px 35px rgba(0,0,0,0.5);
}
边框很难看,但是对于不支持阴影的浏览器是必要的(div的背景与周围元素的颜色相同)。
如何检测浏览器是否支持box-shadow,并删除框阴影?也许用javascript?
编辑:我想这样做而没有任何依赖(例如modernizr)。
例如:
var boxShadowSupported = ???;
if (boxShadowSupported && typeof(document.getElementsByClassName) != 'undefined') {
var elements = document.getElementsByClassName('my-div');
for (var i= 0; i < elements.length; i++) {
elements[i].setAttribute('style', 'border: 0;');
}
}
答案 0 :(得分:3)
您可以使用javascript检查框影浏览器支持:
if ('boxShadow' in document.body.style )
{
alert('I can support shadow!');
}
答案 1 :(得分:0)
也许你可以试试这个:
var foo=document.createElement("div");
foo.style.boxShadow="0px 0px 0px rgb(0,0,0)";
document.body.appendChild(foo);
var boxShadowSupported=foo.style.boxShadow?1:0;