我不是很熟练的javascript,所以请容忍我。Safari 6和更低版本和更老的android移动的浏览器,也许更多不支持css值VH。我的DIV#id或类不是视口的高度。下面是一个链接到一个页面,我发现了一些有用的信息,但我真的不知道如何使用它与css值:
Check whether a css value is supported
下面是为您提供的快捷方式代码:
if('opacity' in document.body.style) {
// do stuff
}
function isPropertySupported(property{
return property in document.body.style;
}
在我上面附上的链接的评论中,有人问如何检查是否支持css值,答案是,“你设置它,然后读回值,检查浏览器是否保留它。”现在我确信,如果我知道更多的javascript,这将是有用的信息,我刚刚开始学习。
这是我的想法,但我真的不知道如何去做这件事。检查是否div#id或div.class有vh css值。检查是否css值是由浏览器支持。如果它支持,然后继续加载。如果不支持,然后改变id或类。
总结一下我的问题:
如何检查使用javascript或jquery的浏览器是否支持css值?
指导解答真的很感谢。谢谢您的帮助。
8条答案
按热度按时间fiei3ece1#
有新的API CSS.supports。支持大多数浏览器,除了IE。
CSS中有一个类似的特性,即@supports feature query selector,除了IE之外,大多数浏览器都支持该特性:
vu8f3i0k2#
我假设您的意思是检查
vh
值是否受支持,而不是检查DIV#id
是否支持它?EDIT:这个已经过时了;
CSS.supports
现在得到了很好的支持,应该改用它。请改用this answer。kh212irz3#
我们可以从javascript测试css规则是否在
CSS.supports
上下文中可用。(自 * 火狐22/ Chrome 28* 起)
supports()静态方法返回一个布尔值,指示浏览器是否支持给定的CSS功能。
https://developer.mozilla.org/en-US/docs/Web/API/CSS/supports
To go further, we can possibly use this property for browser detection.
li9yvcax4#
我看到你的密码了。
只需将您要测试的css属性放在引号中
在此放置样式
当你加载文件时,它会显示一个弹出窗口,告诉你它是否工作。
然而,这似乎没有必要。
简单的谷歌搜索:
[属性] css W3
其中[property]是要了解浏览器支持信息的属性。
当我搜索
不透明度Css W3
然后单击W3链接...您可以向下滚动,您将看到页面的一个部分,其中包含您想要的信息,如下所示:
Source
n8ghc7c15#
我建议使用Modernizr。
Modernizr是一个JavaScript库,它可以检测访问者的浏览器支持哪些HTML5和CSS3功能。在检测功能支持时,它允许开发人员测试一些新技术,然后为不支持这些技术的浏览器提供后备。
一些有用的链接:
rjjhvcjd6#
使用新的CSS
@supports
特性,你可以在CSS和JavaScript中实现。CSS:
JavaScript方式:
CSS
API中提供了supports()
方法来执行此操作。请访问CSS Conditional Rules了解更多信息
dsekswqp7#
这是我的代码,通过检查样式中是否存在驼峰式 prop 来说明完全不支持的属性,如果可用,则使用CSS.supports。
mzsu5hc08#
在Chromium浏览器中,从100版开始,您现在可以使用DevTools检查是否支持特定声明(属性+值)。
下面是我使用Chrome 101(Beta)的网站截图,它是first Chromium version to support
font-palette
属性:您可以在绿色框中看到具有以下条件的
@supports
规则:在Chrome 101中,以下两个声明
得到支持。
与上面的答案不同,这是一个纯粹的DevTools -〉Styles解决方案来确定浏览器中的支持。