检测对background-size的支持:cover [英] Detect support for background-size: cover

查看:122
本文介绍了检测对background-size的支持:cover的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是保存方式,以检测CSS3 background-size:cover 的支持,特别是在IE< 9?

What is a save way to detect support for CSS3 background-size: cover, especially in IE < 9?

以下测试在IE< 9,因为它实际上将背景大小设置为覆盖

Following test returns a false positive in IE < 9, because it actually sets background-size to cover:

div.style.backgroundSize = 'cover';

测试时获得的唯一真实结果:

The only true result I get when testing for:

if ('backgroundSize' in div.style)

但根据网站 http://www.standardista.com/css3 / css3-background-properties /#bg11 ,IE 6/7/8应返回自动,只有覆盖包含不支持。

But according to the site http://www.standardista.com/css3/css3-background-properties/#bg11, IE 6/7/8 should return auto, only cover and contain are not supported.

编辑

我想使用自己的解决方案,但我已检查Modernizr使用的代码
似乎他们使用相同的技术,给我在IE& 9:
设置 backgroundSize ='cover',然后检查 style.backgroundSize =='cover'

I would like to use my own solution, but I have checked the code used by Modernizr. It seems they use the same technique that gives me false positive results in IE < 9: Set backgroundSize = 'cover' and then check for style.backgroundSize == 'cover'.

查看我的 JSFiddle

推荐答案

如果您使用 Modernizr ,您只能下载执行此类任务所需的代码

If you use Modernizr you can download only the code necessary to perform this kind of task

http://modernizr.com/download/#-backgroundsize -testprop-testallprops-domprefixes

然后您可以使用

if (Modernizr.backgroundsize) {
    /* backgroundSize supported */
}

这篇关于检测对background-size的支持:cover的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆