我刚刚换了个浏览器,并调整了不同的分辨率(外接显示器),但没有任何变化。我又在第二台设备上测试,结果却显示正常。
这里的主要区别显然是,我第一台电脑的图片 显示了“移动视图”,而第二台则显示了“键盘快捷键”。也许你判定是否包含“移动视图”的条件,能帮助我们找出问题所在。
当外接显示器时,两台电脑都使用 1440p 分辨率和 100% 缩放,因此从逻辑上讲,它们的渲染结果应该相同。而未外接时,第一台电脑为 1080p 和 125% 缩放。我猜可能是我的分辨率设置在 Discourse 中被缓存了,即使刷新页面后也未更新,导致使用显示器时也没有任何变化。
无论如何,在我看来,“移动视图”或“键盘快捷键”的某些判断逻辑可能是在使用分辨率而非用户代理(user agent),或者类似的因素。也可能是缩放比例未被正确考虑。(看起来 JavaScript 中的 screen.height 和 screen.width 会考虑缩放,但我显然不清楚你们是如何检测屏幕分辨率的,如果你们有做的话)。
顺便提一下,我之前在笔记本电脑上也遇到过类似问题:Discourse 将其视为移动设备,这可能是由于分辨率或缩放设置导致的。


