我做了一个这样的css样式表:
:root {
--main-font: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
--margin: 10cm;
}
@media print {
*:not(span) {
font-family: var(--main-font);
}
@page {
size: A4;
margin: var(--margin);
}
}
main-font
按预期工作,但--margin
不是。打印窗口时,字体随--main-font
值变化,但边距设置为默认值。奇怪的是,如果我改变@pagemargin
值为一个静态的,
像:margin: 10cm
它工作!我不知道为什么会这样。
我认为你不允许在@page
内使用任何带边距的值。我没有在规范中找到关于这一点的明确声明,但在MDN页面中,您可以阅读:
注意:W3C正在讨论如何处理viewport相关的
<length>
单位,vh, vw, vmin和vmax
所以我想CSS变量也会因为类似的原因被忽略