尽管该<meta name="viewport">标签未标准化,但“由于事实上的优势,它被大多数移动浏览器所尊重”。
它不是真正的Web标准的缺点之一是详细的文档不如其他标准提供。该CSS工作组对这个规范,所以这就是我主要用作为权威著作。
我的主要问题是:
以下声明之间的感知区别是什么?
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="viewport" content="initial-scale=1.0">
或者询问,这两个@viewport CSS规则之间有什么区别:
/* Translated from <meta name="viewport" content="width=device-width, initial-scale=1.0"> */
@viewport {
zoom: 1.0;
min-width: extend-to-zoom;
max-width: 100vw;
}
/* Translated from <meta name="viewport" content="initial-scale=1.0"> */
@viewport {
zoom: 1.0;
min-width: extend-to-zoom;
max-width: extend-to-zoom;
}
我如何得出这些@viewport译文的:
width=device-width 至 min-width: extend-to-zoom; max-width: 100vw;
在CSS设备适配模块级别1号文件规定:
将
width和height视口<META>属性转换为width和height描述符,将min-width/min-height值设置为extend-to-zoom,将max-width/max-height值设置为视口的长度。
他们还举了一个例子:
该
<META>元素:<meta name="viewport" content="width=500, height=600">转换为:
@viewport { width: extend-to-zoom 500px; height: extend-to-zoom 600px; }
的width速记描述符被描述为:
这是设置
min-width和的简写描述符max-width。一个<viewport-length>值将同时设置min-width和max-width那个值。两个<viewport-length>值将分别设置min-width为第一个和max-width第二个。
因此,按理说width: extend-to-zoom 500px;等同于min-width: extend-to-zoom; max-width: 500px;。
那只剩下100vw一部分了。在第10.4节中,他们解释:
device-width并device-height分别转换为100vw和100vh
这样我们终于可以看到如何width=device-width翻译成min-width: extend-to-zoom; max-width: 100vw;。
initial-scale=1.0 至 zoom: 1.0; width: extend-to-zoom;
这是一个逐字记录的示例:
该
<META>元素:<meta name="viewport" content="initial-scale=1.0">转换为:
@viewport { zoom: 1.0; width: extend-to-zoom; }
我在这里的另一个问题是,确切的价值是什么?extend-to-zoom
关于它的文档及其解决程序很难掌握。如果有人能指出一些其他示例,将不胜感激。
除了上述所有内容之外,我还建立了一个快速站点-https ://romellem.github.io/temp-site/viewport/-测试一些视口配置。
即:
这可能有助于测试。
1.0,但是我不确定。无论如何,很好的答案,谢谢!