使用JavaScript检查浏览器CSS属性支持?

时间:2009-08-27 18:35:27

标签: javascript css browser-feature-detection

在JavaScript中是否可以知道客户端浏览器是否支持CSS属性?我在谈论CSS3的旋转属性。我想只在浏览器支持它们时才执行某些功能。

4 个答案:

答案 0 :(得分:36)

我相信你可以这样做:

if ('WebkitTransform' in document.body.style 
 || 'MozTransform' in document.body.style 
 || 'OTransform' in document.body.style 
 || 'transform' in document.body.style) 
{
    alert('I can Rotate!');
}

答案 1 :(得分:8)

为此目的,有一个新的DOM API CSS.supports。 FF,Opera(作为supportCSS)和Chrome Canary已经实现了这种方法。

对于跨浏览器兼容性,您可以使用我的CSS.supports polyfill

示例:

CSS.supports("display", "table");//IE<8 return false

但是,您仍需要为css属性添加前缀来指定浏览器前缀。例如:

CSS.supports("-webkit-filter", "blur(10px)");

我建议使用Modernizr进行特征检测。

答案 2 :(得分:0)

您可以使用Modernizr库。

css转换示例:

在.css文件中;

if (Modernizr.csstransforms) {
  // supported
} else {
  // not-supported
}
<。>在.js文件中;

ResultSet

答案 3 :(得分:0)

可以尝试一下吗?

var temp = document.createElement('div');
var isSupport = temp.style['propName'] != undefined;