【问题标题】:Is there any way for a website to differentiate between Microsoft Edge and Google Chrome's rendering engine? [closed]网站有什么方法可以区分 Microsoft Edge 和 Google Chrome 的渲染引擎? [关闭]
【发布时间】:2016-07-09 15:56:31
【问题描述】:

Microsoft Edge 在渲染我的网站时遇到了很多问题,因为它已适应 Firefox 和 Chrome,因此我决定添加一条弹出消息,建议切换到 Firefox 或 Chrome。

但是,我注意到很多网站无法区分 Chrome 和 Microsoft Edge,因为它的渲染引擎与 Webkit 非常相似。有些人错误地将 Edge 识别为 Chrome。

是否有某种媒体查询或 JS hack 可以区分这两种浏览器? 由于它仍然是一个非常新的浏览器,如果有明确的媒体查询,而不是临时的,那就太好了。

【问题讨论】:

  • 我不知道您的问题的答案,但 Microsoft Edge 遵循与最新的 Firefox 和 Chrome 相同的 Web 标准。如果它在 Edge 中不起作用,则说明您的网站有问题,而不是浏览器。
  • "如果它在 Edge 中不起作用,则说明您的网站有问题"; rofl,全天最好的笑话...caniuse.com/#compare=edge+13,firefox+45,chrome+49
  • 出于某种奇怪的原因,Edge 无法正确缩放 SVG 图形,即使设置了 viewBox、宽度和高度。我很震惊,因为caniuse 提到它应该是最好的解决方法。我的菜单在不同的浏览器中看起来像这样:image。不过,对 cme​​ts 感到抱歉。
  • @MrMisterMan 你错了。 Edge 比旧的 IE 有更多的标准方法,但每天都是同样的故事,虽然微软不能让他的浏览器适应标准,但不可能说 Edge 具有与 chrome 或 firefox 相同的行为。这是一个谎言。或者正如 dandavis 所说,全天最好的笑话。
  • Edge 是一回事,但如果 FF 和 Ch 不匹配,则需要进行一些验证和内务处理...

标签: javascript css google-chrome media-queries microsoft-edge


【解决方案1】:

是否有某种媒体查询或 JS hack 可以区分 两个浏览器之间?

由于只有 chrome 、 chromium 和 canary 实现 requestFileSystem 可以尝试

if ("webkitRequestFileSystem" in window) {
  // do chrome stuff
}

【讨论】:

  • 如果 chrome 取消前缀 animation,就像他们对 borderRadius 等所做的那样?
  • 不,Microsoft Edge 将 webkit 前缀映射到它们的无前缀别名,专门用于阻止这些检查。
  • @dandavis 还有其他选择。其他浏览器目前没有的一个属性是requestFileSystem
  • @BoltClock 查看更新后的帖子
猜你喜欢
  • 2018-02-20
  • 2021-06-19
  • 2011-07-01
  • 2010-12-21
  • 2017-05-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-02
  • 1970-01-01
相关资源
最近更新 更多