在iOS 11.3 Safari上是否有一种防止缩放缩放的非黑客方法?

真的想禁用捏缩放我的网页(iframe)并使用手指捏事件进行另一次自定义交互。 因此,虽然Safari的文档说它支持以下条款:

 

……在实践中Safari并不尊重它。

防止视口缩放的能力通常对于网络游戏体验以及围绕按钮,输入框和幻灯片输入/输出类型的界面甚至video的更紧密的用户体验很重要,同时它仍然是低视力阅读器的良好默认值。 iOS Safari上还有一个精简的reader模式,可提供具有所需辅助function的整洁阅读。

恕我直言,应用无障碍原则针对每个网络用户的低视力阅读器是严苛的。 可以使用passive事件监听器来修复缩放缩放,但为了卫生,问题是:是否有一种非黑客的方法呢?


在最近与W3C / WCAG团队的讨论中 ,澄清了(强调我的)可访问性指南仅指明……

一个不应该是自2016年以来一直在规范中的一致性要求arronei / html @ 877b59c。 它仅是作者一致性要求, 不禁止使用,但要求作者认真考虑缩小用户的缩放能力。 苹果在safari中做了什么超出了这个问题的范围,因为它不需要任何浏览器实现者。

随着iOS Safari最近的变化,Apple似乎已经将可访问性指南倾向于CANNOT author conformance要求,而不是出于他们所知的原因。 重要的是,此处突出显示规范和实现之间的差异以备记录。


在与Apple iOS Safari团队讨论之后,在此处针对此一致性问题向webkit提交了一个错误。

从如何在Mobile Safari上禁用视口缩放?

尝试将以下内容添加到head-tag:

  

另外

  

最后,无论是作为样式属性还是在css文件中,为基于webkit的浏览器添加以下文本:

 html { -webkit-text-size-adjust: none } 

虽然没有一种非hacky方法可以防止pinchzoom ,但仍有一个适用于iOS 11.3 Safari的黑客攻击。 最起码到现在。 请参阅inobounce ,在一次扫描中处理橡皮筋行为和pinchzoom。