我建立一个响应网站,我有这意味着,当我认为它在移动,它会自动通过少量的放大出了问题。 我可以缩小查看的页面的整个宽度,但是当我点击一个链接到另一个网页,在稍新的页面加载在放大以及(也许10%左右)。
我给自己定一个合适的视口应处理的问题:
<meta name="viewport" content="width=device-width, initial-scale=1" />
我也设置在身上,这是必要的最小宽度低于这个宽度站点布局符:
body {
min-width: 400px;
}
如果没有最小宽度的网站的作品在移动设备上很好,但与最小宽度,页面负载略有放大。我已经试过这对Chrome和股票的浏览器在Android(在银河S3和Galaxy Nexus的)同样的结果,这样看来我误解的东西,而不是发现了一个错误。
最后,我想完全缩小(初始规模= 1)现场,并设置为400像素,所以我并不需要在严格的宽度担心布局的最小显示宽度。 这甚至可以实现?
好吧,我已经成功地找到适当的解决这个问题。 问题是,我设置了视口的设备宽度,一般好像是做了一件好事。
当该装置宽度比为我的网站(400像素在这种情况下)设置的最小宽度越低就会出现问题。 因此,举例来说,如果设备宽度为320像素,视口被设置为这个宽度导致网页约为80px过大的手机屏幕。
该解决方案是一些JavaScript从装置宽度400中的实例,其中所述窗口宽度小于或等于400点的像素改变视口宽度。 下面这段代码解决的问题:
<meta id="myViewport" name="viewport" content="width=device-width" />
<script>
window.onload = function () {
if(window.innerWidth <= 400) {
var mvp = document.getElementById('myViewport');
mvp.setAttribute('content','width=400');
}
}
</script>
您可以使用该功能防止变焦。
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1,user- scalable=0"/>
但我不认为这是一个好主意,保持
body
{
min-width: 400px;
}
因为它的内容将溢出在一个较小的口中。 您缩放的问题可能是从组合
body
{
min-width: 400px;
overflow: hidden;
}
所以现在看来似乎在放大真实。
文章来源: Why is CSS min-width causing my responsive site to be zoomed in on a mobile?