我对最近的网站部署存在一个奇怪的问题 - 该网站在任何iOS9 Safari移动浏览器上都无法正常扩展,这似乎会缩小网站。
对于任何其他设备而言,这似乎不是问题,我已经在Firefox(Android和桌面),Chrome(Android和桌面),Safari(桌面),IE(桌面)上进行了测试。
有没有人知道修复此问题?
非常感谢
[UPDATE]
继续讨论here之后,这个元似乎做了这个工作:
<meta name="viewport" content="initial-scale=1.0001, minimum-scale=1.0001, maximum-scale=1.0001, user-scalable=no"/>
唯一的问题是,我不希望像这样更改视口,以防它影响其他设备。有没有更好的解决方案专门针对iOS9?也许是通过浏览器嗅探?
再次感谢
答案 0 :(得分:3)
我最终使用 HTTP_USER_AGENT 并为每个条件使用不同的元数据(下面的PHP解决方案):
<?php
if(strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strpos($_SERVER['HTTP_USER_AGENT'],'iPad' ) || strpos($_SERVER['HTTP_USER_AGENT'], 'iPod' ) !== false){
if (strpos($_SERVER['HTTP_USER_AGENT'], 'OS 9') !== false) {
echo '<meta name="viewport" content="initial-scale=1.0001, minimum-scale=1.0001, maximum-scale=1.0001, user-scalable=no"/>';
}
else {
echo '<meta name="viewport" content="<WHATEVER_CONTENT>"/>';
}
} else {
echo '<meta name="viewport" content="<WHATEVER_CONTENT>"/>';
}?>
希望这可以帮助将来遇到此问题的其他人。
[更新 - 更好的方法]
更好的是,而不是浏览器嗅探方法,感谢Krepelk(继前面提到的原始论坛之后) - 自iOS9以来,他们为网页引入了“缩小以适应”功能,其内容比视口。
可以通过在视口元标记中添加 shrink-to-fit = no 来恢复此操作:
<meta name="viewport" content="width=device-width, initial-scale=1, min-scale=1, max-scale=1, shrink-to-fit=no">
瞧!问题已解决并恢复为iOS8功能。我想这会影响很多网站...