我找不到这个的文件,是 Safari 专用的吗?
IOS9(给你)最近出现了一个 bug,解决方案是将 shrink-to-fit=no添加到 viewport 元。
shrink-to-fit=no
这个代码是做什么的?
它是 Safari 特有的,至少在编写本文时是这样,它是在 Safari 9.0中引入的。来自“ Safari 有什么新鲜事?”返回文章页面
视图更改 使用 "width=device-width"的 Viewport 元标记会导致页面缩放以适应溢出 Viewport 边界的内容。通过将 "shrink-to-fit=no"添加到 meta 标记中,可以覆盖此行为,如下所示。增加的值将阻止页面扩展以适应视区。 <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
使用 "width=device-width"的 Viewport 元标记会导致页面缩放以适应溢出 Viewport 边界的内容。通过将 "shrink-to-fit=no"添加到 meta 标记中,可以覆盖此行为,如下所示。增加的值将阻止页面扩展以适应视区。
"width=device-width"
"shrink-to-fit=no"
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
简而言之,将其添加到 viewport meta 标记中可以恢复 Safari 9.0之前的行为。
下面是一个工作的可视化示例,它显示了在两种配置中加载页面时的差异。
红色部分是视口的宽度,蓝色部分定位在初始视口之外(如 left: 100vw)。请注意,在第一个示例中,当省略 shrink-to-fit=no(从而显示视口外的内容)并且在后一个示例中蓝色内容保持在屏幕外时,如何缩放页面以适应。
left: 100vw
这个示例的代码可以在 https://codepen.io/davidjb/pen/ENGqpv找到。
作为 iOS 使用情况的统计数据,表明 iOS 9.0-9.2. x 的使用率目前为0.17% 。如果这些数字真正表明了这些版本的全局使用,那么从 viewport 元标记中删除“缩小到适合”就更有可能是安全的。
在9.2.x. IOS 之后,删除其浏览器上的这个标记。
您可以检查这个页面 https://www.scottohara.me/blog/2018/12/11/shrink-to-fit.html
这是一个标签,可以帮助你的网页不收缩,以适应,这是由浏览器默认设置,如果它被设置为“没有”就像这样: <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=*no*">,然后它将超越浏览器的默认过程,以遵循你的,即不收缩,以适应。
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=*no*">
我希望这能够澄清,如果不尝试复制你的 head 标签中的代码,或者使用你喜欢的编辑器,刷新并加载浏览器,改变解决方案,你就会找到解决方案。