IE font-size: 1vw,而我要开发的网站要求支持。

如果执行calc(1px * 1vw),是否返回像素值?我对calc()的理解正确吗?

我假设font-sie: 1vw不起作用,因为IE不知道如何将vw转换为px

最佳答案

简短的回答是“否”,因为IE calc()。https://caniuse.com/#search=calc()

稍长的答案仍然是“否”,因为您不能用不同的单位相乘或除法。这是W3文档所说的:


  在*处,检查至少一侧是数字。如果双方都是整数,则解析为。否则,请解决另一端的类型。
  
  在/处,检查右侧是否为数字。如果左侧为整数,则解析为。否则,请解析为左侧的类型。


https://www.w3.org/TR/css3-values/#funcdef-calc

由于vw不适用于IE8(emrem都不会),我唯一想到的就是尝试%

如果您可以在IE8上使用静态字体大小,则只需添加一个备用字体大小即可。这样,现代浏览器将读取1vw并继续前进,而IE8会读取它并说我是恐龙,不知道那是什么,所以我将使用您以前的尺寸(例如)。

p {
  font-size: 16px;
  font-size: 1vw;
}

09-28 10:47