8

我正在寻找一种方法来为打印媒体使用与默认屏幕布局相同的样式表。对我来说的好处是每次更新 CSS 时我都不必更新 2 个文件。我希望有一个样式表,并通过以某种方式表示它们来指定印刷媒体的特殊规则……这可能是不可能的,但我想我会把问题放在那里。

4

2 回答 2

7

如果您希望所有媒体的样式相同,只需将样式表中的通用样式定义为正常(即不在任何媒体规则中),然后将媒体特定元素放入相关规则中。

如果您希望将某些样式应用于媒体子集,可以这样做:

@media print {
  body { font-size: 10pt }
}
@media screen {
  body { font-size: 13px }
}
@media screen, print {
  body { line-height: 1.2 }
}

这是相关 W3C 页面的链接

于 2009-07-26T22:01:37.573 回答
4

有这种语法,虽然老实说我不知道​​是否所有浏览器都支持它(应该是):

@media print {
    body {
        background: #fff;
        color: #000;
    }
    /* etc */
}

请参阅W3 中 CSS2 标准的媒体部分

于 2009-07-26T21:59:17.687 回答