所以我一直在使用:
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;"/>
让我的内容在iPhone上很好地显示。它工作得很好,直到用户将设备旋转到横向模式,在这种模式下,显示器仍被限制为320px。
有没有一种简单的方法来指定随着用户更改设备方向而更改的视口?或者我必须求助于Javascript来处理它?
发布于 2010-06-03 12:03:19
我自己也在试着解决这个问题,我想出的解决方案是:
<meta name="viewport" content="initial-scale = 1.0,maximum-scale = 1.0" />
这似乎将设备锁定在1.0刻度,而不管它的方向。然而,作为一个副作用,它确实完全禁用了用户缩放(收缩缩放等)。
发布于 2011-11-14 17:29:14
如果可以的话,你不会想失去用户缩放选项的。我喜欢这个来自here的JS解决方案。
<script type="text/javascript">
(function(doc) {
var addEvent = 'addEventListener',
type = 'gesturestart',
qsa = 'querySelectorAll',
scales = [1, 1],
meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : [];
function fix() {
meta.content = 'width=device-width,minimum-scale=' + scales[0] + ',maximum-scale=' + scales[1];
doc.removeEventListener(type, fix, true);
}
if ((meta = meta[meta.length - 1]) && addEvent in doc) {
fix();
scales = [.25, 1.6];
doc[addEvent](type, fix, true);
}
}(document));
</script>
发布于 2009-08-07 00:24:15
您将其设置为不能缩放(maximum-scale = initial- scale ),因此当您旋转到横向模式时,它不能缩放。设置maximum- scale =1.6,它将适当缩放以适应横向模式。
https://stackoverflow.com/questions/1230019
复制相似问题