我建了一个网站(暂无链接)。所述网站响应迅速,通常在大多数现代设备上都能正常运行。这有助于我使用的唯一真正现代的 CSS 功能是“过渡”、“转换”和“框大小调整”。它们通常以有前缀和无前缀的形式使用。
现在,由于我这里没有大量的 Android 设备,我想我应该在 Android 模拟器中尝试使用 Android SDK 提供的网站。那时,我有点震惊地发现它在低于 4.3 的所有方面都相当糟糕。
问题似乎是我的菜单实现使用了“transform: translate();”并且 Android 标准版浏览器显然不支持此属性。
我注意到 Google 似乎在 Android 4.0、4.1、4.2 和 4.3 的模拟器图像中使用相同的 WebKit 版本 (534.30)。 (如果我可以信任用户代理字符串。)
在 Android 4.4 及更高版本的模拟器图像中,一切都按预期工作。 Android 4.4 也是第一个使用基于 Chrome(版本 33)的 WebView 实现的版本。
我自己的 Android 设备(来自 Sony)在 Android 4.3 上运行。根据用户代理字符串,WebView 的 WebKit 版本也为 534.30。我在使用 WebView(F-Droid 的 Lightning 浏览器)的浏览器中尝试了我的网站。它奏效了,包括动画。
一位同事也在他的 Android 4.0 三星设备上打开了我的网页。它也在那里工作。 (还没有在那里检查用户代理。)
所以,我想,也许 Google 通过 Play 服务更新 WebView。据我所知,情况似乎并非如此:我禁用了 Play Services 应用程序,删除了它的数据,然后重新启动了手机。该页面仍然有效。
这是怎么回事?制造商正在疯狂地修补 WebKit 吗?我完全可以信任 WebKit 版本号吗?
(已更新以澄清实际问题。)
最佳答案
检查屏幕尺寸。模拟器总是有不同的屏幕尺寸。这可能是问题所在。
关于android - 为什么我的网站在 Android 模拟器和设备上看起来不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31964260/