“initial-scale”在meta viewport标签中的最小值是多少?

10

在尝试使用 meta viewport 标签时,我注意到任何小于0.25的 initial-scale 值都会被视为0.25。例如,以下所有值:

<meta name="viewport" content="width=device-width, initial-scale=0.25">  
<meta name="viewport" content="width=device-width, initial-scale=0.1">  
<meta name="viewport" content="width=device-width, initial-scale=0.01">  
<meta name="viewport" content="width=device-width, initial-scale= ">

使页面呈现相同。 因此,

  • 在 meta viewport 标记中,“initial-scale”的最小允许值是0.25吗?
  • “initial-scale”的默认值是什么?
  • 为什么当给出空白空间作为 initial-scale= 时,初始缩放不采用其默认值而采用0.25?
1个回答

8
W3C规定:
缩放相关属性initial-scale、minimum-scale和maximum-scale会分别被翻译为zoom、min-zoom和max-zoom,并按以下方式转换值:
1. 非负值将被转换为在[0.1,10]范围内的值。 2. 负数值将被舍弃。 3. “yes”将被翻译成1。 4. “device-width”和“device-height”将被翻译成10。 5. “no”和未知的值将被翻译成0.1。
参考文献:https://www.w3.org/TR/css-device-adapt-1/#translate-meta-to-at-viewport 因此,最小值应为0.1,缺省值也是0.1,当没有设置值时,将使用缺省值。您测试的浏览器可能使用了缺省值,但由于它似乎不低于0.25(如在您的测试用例中),因此无法确定它是否使用了缺省值。

我猜当整个视口标签被省略或省略了“initial-scale”部分时,它使用“1”作为默认值。 - user31782
@user31782 我很确定它没有,如果你在不设置 initial-scale 并使用 initial-scale=1 进行测试,你会看到一个很大的区别...更多信息请阅读: https://developer.mozilla.org/zh-CN/docs/Mozilla/Mobile/Viewport_meta_tag - Asons
引用的文本并没有提到默认值。实际上,如果您跟随链接到zoom等属性所映射的位置,您会发现默认值是auto - Vladimir Panteleev
@VladimirPanteleev -- 第5点规定:no和未知值被翻译为0.1,但实际上比这更复杂,简单地说默认值是auto,因为它基于使用移动设备或桌面设备等情况,从UA样式表中获取值。此外,不同属性的组合会产生不同的结果,因此我参考/链接了W3C。 - Asons
  1. 我认为那不准确。
  2. 我会对不准确的帖子进行负面评价(这有助于改进网站),一旦错误被修正,我会取消负面评价/改为正面评价(如果帖子被编辑过,该网站允许更改您的投票)。
- Vladimir Panteleev
@VladimirPanteleev -- 1)在此情况下,花费时间进行投票和评论(假设您声明默认值为“自动”)与编辑我的答案所需的时间相同,因此有足够的时间修正我的答案。 2)我的解释基于W3C的信息,指出当属性使用“没有”或未知值时,默认值为0.1,这明确指出状态点5。从未使用的属性的默认值当然是不同的,因此提供了链接,以便可以查看可能是什么(在某些情况下为“自动”),尽管这不是OP所要求的。 - Asons

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接