是否有一个HTML5/CSS3兼容性测试作为测试单个功能的替代方案?

是否有一个HTML5/CSS3兼容性测试作为测试单个功能的替代方案?,html,css,Html,Css,我已经得到了一个网站,我需要显示一个弹出窗口,如果浏览器不支持使用的任何功能,因为它是建立与CSS 3和HTML 5。唯一的问题是,我不知道是否有一个“一网打尽”的方法来检查浏览器是否无法解析某些内容,或者我是否需要使用类似Modernizer的方法来单独检查每个元素和功能 如果有一个catch-all方法来检查浏览器是否无法解析某些内容 解析运行在非常通用的规则上。将未知元素添加到DOM中。将未知属性添加到DOM中。CSS属性或未识别属性的值将被忽略。忽略与具有未知组件的CSS选择器关联的规则

我已经得到了一个网站,我需要显示一个弹出窗口,如果浏览器不支持使用的任何功能,因为它是建立与CSS 3和HTML 5。唯一的问题是,我不知道是否有一个“一网打尽”的方法来检查浏览器是否无法解析某些内容,或者我是否需要使用类似Modernizer的方法来单独检查每个元素和功能

如果有一个catch-all方法来检查浏览器是否无法解析某些内容

解析运行在非常通用的规则上。将未知元素添加到DOM中。将未知属性添加到DOM中。CSS属性或未识别属性的值将被忽略。忽略与具有未知组件的CSS选择器关联的规则集。JavaScript属性的赋值是在没有特殊处理的情况下进行的

您可以捕获的唯一内容(使用
try/catch
)是尝试调用不存在的函数,以及尝试访问不存在的对象的属性

所以,不,没有一个通用的解决方案。您需要单独测试可能导致严重故障的所有内容

如果有一个catch-all方法来检查浏览器是否无法解析某些内容

解析运行在非常通用的规则上。将未知元素添加到DOM中。将未知属性添加到DOM中。CSS属性或未识别属性的值将被忽略。忽略与具有未知组件的CSS选择器关联的规则集。JavaScript属性的赋值是在没有特殊处理的情况下进行的

您可以捕获的唯一内容(使用
try/catch
)是尝试调用不存在的函数,以及尝试访问不存在的对象的属性


所以,不,没有一个通用的解决方案。您需要单独测试可能导致严重故障的所有内容

我不确定我是否正确理解了你的问题,但我想你是在问,是否有一个单一的测试来识别不支持任何HTML5/CSS3功能的浏览器(这样你就知道没有必要测试对单个功能的支持)

简言之:没有

“HTML5”和“CSS3”都是指松散的功能组,它们之间没有特别的关联,只是它们不在HTML4或CSS2.1规范中。没有任何根属性、特性或东西可以检查以告诉您是否支持HTML5/CSS3。它只是一系列的附加功能,它们各自存在或不存在

浏览器检测可能是您的最佳选择。看看你网站的浏览器统计数据,看看哪些最常见的浏览器不支持任何HTML5/CSS3功能(我会大胆地猜测是IE8/7/6)。然后为这些浏览器编写/获取(例如从)检测

如果用户正在使用其中一个,则显示弹出窗口。如果没有,请在使用前测试各个功能


最终,不支持任何东西的旧浏览器将不会被使用到足够重要的程度。

我不确定我是否正确理解了你的问题,但我想你是在问,是否有一个单一的测试来识别不支持任何HTML5/CSS3功能的浏览器(这样你就知道,测试支持单个功能是没有意义的)

简言之:没有

“HTML5”和“CSS3”都是指松散的功能组,它们之间没有特别的关联,只是它们不在HTML4或CSS2.1规范中。没有任何根属性、特性或东西可以检查以告诉您是否支持HTML5/CSS3。它只是一系列的附加功能,它们各自存在或不存在

浏览器检测可能是您的最佳选择。看看你网站的浏览器统计数据,看看哪些最常见的浏览器不支持任何HTML5/CSS3功能(我会大胆地猜测是IE8/7/6)。然后为这些浏览器编写/获取(例如从)检测

如果用户正在使用其中一个,则显示弹出窗口。如果没有,请在使用前测试各个功能


最终,不支持任何东西的旧浏览器将不会被充分利用。

你的问题毫无意义。不,没有一种测试可以神奇地查看站点中的每一段代码,并告诉您哪些代码在某些浏览器中无法正常工作,而您需要为此付出一些努力

这就是像Modernizer这样的工具的全部要点——能够测试各种CSS3/HTML5功能,以及使用中的浏览器是否支持它们。Modernizer只是针对特定功能的一次性测试的集合,您可以测试任意数量的功能,并使用polyfills等相应地调整代码,以解决您所使用的任何功能的兼容性不足。除此之外,没有什么神奇的解决办法


您需要识别所有CSS3,HTML5等功能在您的站点代码中可能不受旧浏览器的支持,并使用Modernizer等工具测试它们是否在客户端浏览器中工作,并使用这些测试的结果确定是否显示模式以及在模式上显示什么。

您的问题没有太多意义。不,没有一种测试可以神奇地查看站点中的每一段代码,并告诉您哪些代码在某些浏览器中无法正常工作,而您需要为此付出一些努力

这就是像Modernizer这样的工具的全部要点——能够测试各种CSS3/HTML5功能,以及使用中的浏览器是否支持它们。Modernizer只是针对特定功能的一次性测试的集合,您可以测试任意数量的功能,并使用polyfills等相应地调整代码,以解决您所使用的任何功能的兼容性不足。除此之外,没有什么神奇的解决办法

您需要识别所有CSS3、HTML5等