User-Agent字段中的Mozilla / 5.0是否表示浏览器支持HTML5?

时间:2012-11-22 18:29:52

标签: browser cross-browser user-agent mozilla

是否可以假设指示Mozilla/5.0 (compatible...)的浏览器支持HTML5?

2 个答案:

答案 0 :(得分:6)

没有。您应该使用类似Modernizr的内容来检测功能并在必要时进行后备。

HTML5是不同功能的集合,因此您应该检查所需的浏览器功能。 User-Agent字段不应该用于确定兼容性,因为客户端程序可以说谎。用户代理嗅探不是推荐的兼容性方法 - 它太容易出错,而且有多种浏览器可以将用户代理字段更改为其他浏览器。

Mozilla / 5.0或Mozilla / 4.0在这么多浏览器的User-Agent中出现的原因是为了表明它们与某些版本的Netscape具有向后兼容性(4.0 = Netscape 4.0 - 5.0与原始版本兼容)套房(又名SeaMonkey))。基本上每个浏览器都会声称这种兼容性,所以它不是一个非常有用的指标。​​

答案 1 :(得分:1)

我通常不会使用标头来检查HTML5兼容性,只需让浏览器执行此操作:发送HTML5和HTML< 5内容,然后执行一些黑客操作以在适当的情况下显示它们。例如:

<audio>Username:</audio><input type="text" placeholder="Username">

在这种情况下,如果可能,请使用placeholder,否则显示标签。 <audio>...</audio>中的内容将由非HTML5浏览器显示,而HTML5浏览器将忽略它;反之亦然,非HTML5浏览器不会解析placeholder="Username",而HTML5浏览器则会解析。