您是否曾经参与过与 Web 开发相关的对话,其中有人提到了全球浏览器使用统计数据?我可能有点奇怪,但我可以说我几乎每天都会听到类似的对话。
我非常想使用“新特性”,但它不受某些浏览器(可能是旧的 Internet Explorer)的支持,而它的全球市场份额仍然为 7.62%。
您考虑到网站上各种浏览器的使用情况,这一点很好。但是,这里存在一些逻辑上的错误。任何特定浏览器的全球市场份额与您是否可以使用某个功能无关。重要的浏览器统计数据是您网站的浏览器使用统计数据,而不是其他任何人的。
存在相当大的差异
您不能将全球统计数据作为您自己的统计数据的替代品的原因是,它们可能是完全错误的。即使在这里保持广角镜头,不同的大陆(甚至国家)在使用情况上也有不同的细分。稍微放大一点,不同的行业和市场有不同的细分。完全放大,您的网站将拥有完全独特的浏览器使用统计数据。
像 StatCounter 这样的跟踪 全球 浏览器市场的网站很有趣,但我认为它们主要存在于饭局谈话中。
我与许多为内联网设计的人员交谈过,由于公司为员工提供的计算机,他们的浏览器使用情况非常具体。最近,我听说一个内联网的 IE 11 使用率超过 50%。全球 3.71% 的统计数据与他们无关。
我与一些用户网站严重偏向于移动设备的人员交谈过,这显然是他们的首要任务。在 CSS-Tricks 上,我看到移动设备上的比例约为 6%,自从移动设备成为主流以来,一直都保持在 6% 或更低。我认为,如果我们根据自己的数据集拥有略有不同的优先级,是可以的。
如果您没有数据怎么办?
Google Analytics 是免费的。将其添加到网站上几天。这足以了解正在发生的事情。
如果网站尚不存在,请进行合理的猜测,并在使用过程中进行调整。您可以向一些与您的新网站类似的网站的工作人员咨询。
请记住,总存在一定程度的“先有鸡还是先有蛋”的问题。如果您构建了一个优秀的移动网站,您将看到更高的移动流量。有些人看到移动流量增加,然后构建一个更好的移动网站来适应。哪个先来?没有明显的答案。
因此……
- 如果您正在处理一个拥有大量 IE 10 用户群的项目,那么请尽力支持 IE 10。这是您的工作。
- 如果您正在处理一个来自 UC 浏览器的大量流量的项目,则应尽力支持 UC 浏览器。这是您的工作。
- 如果您正在处理一个来自 Safari 3 的流量仅为 0.0001% 的项目,则应停止对 Safari 3 的支持,并阻止您的团队花费任何时间在上面。这是您的工作。
- 您的工作还包括考虑趋势线。如果有一个新浏览器正在上升,那么支持它比支持一个正在衰落的旧浏览器更有意义。
渐进增强在这里起作用
我们应该注意不要将“支持”与“在任何地方都完全相同”混淆。渐进增强原则是在一组基本的功能(以及美学,您可以这样认为)的基础上构建,并在浏览器支持时分层添加功能。这样,即使您停止对特定浏览器的支持,也并不意味着在那里没有任何功能,而只是意味着他们的体验有所不同。公平地说,可能会更差,但可以使用。
不过这很棘手。假设收到了关于您未明确支持的浏览器的工单。即使您主要使用渐进增强技术,旧浏览器中也存在某些问题。您是否会修复它?这取决于您,但总存在一个“不”的界限。
有用的工具
我不知道有什么工具像 Google Analytics 一样好,可以收集和查看浏览器使用统计数据。默认实现都是基于 JavaScript 的,因此如果您担心这方面的数据偏差,您可能需要在网上搜索“无 JavaScript 的 Google Analytics”,因为它似乎是可能的。
以下是 CSS-Tricks 的一个月数据。

当然,以上数据对除了我和在 CSS-Tricks 工作的人之外的任何人都没有用。
出色的浏览器支持网站 Can I use 允许您直接从 Google Analytics 导入数据。这样,当您查看支持百分比时,它将基于您自己的数据(万岁!)。

还有其他工具利用浏览器使用统计数据来做出决策。例如,流行的工具 Autoprefixer 处理 CSS,在必要时添加前缀和备用属性以支持请求的浏览器范围。Babel 是一个流行的工具,用于将 JavaScript 处理成旧版浏览器可以使用的一种格式,它可以配置为针对特定的一组浏览器。
幸运的是,有一个努力来控制这些工具的配置方式,称为 Browserslist,您可以 在这里阅读。
这都是一种舞蹈
显然,我提倡根据您自己网站的浏览器使用数据进行讨论。另一方面,试图阻止试图使用全球使用情况作为您选择指标的对话。
但是,当然,现实世界的开发始终是业务需求、使人们满意、开发人员技能和便利性以及可用工具的结合。您可能会更深入地进行支持(比数据显示的必要程度更深),因为它是您品牌的一部分,或者因为它并不难做到。由于您的渐进增强基础、polyfilling 和一个使用非常旧浏览器的利益相关者,您可能会更倾向于现代化和浅层支持(比数据显示的必要程度更浅)。
继续跳舞吧。