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

发布于 2024-08-03 02:19:27 字数 76 浏览 6 评论 0原文

JavaScript 是否可以知道客户端浏览器是否支持 CSS 属性?我说的是CSS3的旋转属性。我只想在浏览器支持的情况下执行某些功能。

Is it possible in JavaScript to know if a CSS property is supported by the client browser? I'm talking about the rotation properties of CSS3. I want to execute some functions only if the browser supports them.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

初雪 2024-08-10 02:19:27

我相信你可以这样做:

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!');
}

I believe you can do it this way:

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!');
}
锦上情书 2024-08-10 02:19:27

为此,有一个新的 DOM API CSS.supports 。 FF、Opera(支持 CSS)和 Chrome Canary 已经实现了此方法。

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

示例:

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

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

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

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

There is a new DOM API CSS.supports for that purpose. FF, Opera (as supportsCSS) and Chrome Canary already implement this method.

For cross-browser compatibility you can use my CSS.supports polyfill

Example:

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

But, you still need to specify browser prefix for prefixing css properties. For example:

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

I suggest to using Modernizr for feature-detection.

土豪我们做朋友吧 2024-08-10 02:19:27

可以试试这个吗?

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

May be try this?

var temp = document.createElement('div');
var isSupport = temp.style['propName'] != undefined;
空‖城人不在 2024-08-10 02:19:27

您可以使用 Modernizr 库。

css 转换示例:

在 .css 文件中;

.no-csstransforms .box { color: red; }
.csstransforms .box { color: green; }

在 .js 文件中;

if (Modernizr.csstransforms) {
  // supported
} else {
  // not-supported
}

You can use Modernizr library.

Example for css transform:

in .css file;

.no-csstransforms .box { color: red; }
.csstransforms .box { color: green; }

in .js file;

if (Modernizr.csstransforms) {
  // supported
} else {
  // not-supported
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文