【发布时间】:2013-10-23 05:05:21
【问题描述】:
我想在css下以特定方式打印一个html页面。但是所有@media 打印示例似乎都有一个外部 .css 文件,我希望能够在没有外部文件的情况下做到这一点,这意味着不会有链接 rel 标签:
<LINK REL="stylesheet" MEDIA="print...
我该怎么做?
【问题讨论】:
标签: html css printing styles media
我想在css下以特定方式打印一个html页面。但是所有@media 打印示例似乎都有一个外部 .css 文件,我希望能够在没有外部文件的情况下做到这一点,这意味着不会有链接 rel 标签:
<LINK REL="stylesheet" MEDIA="print...
我该怎么做?
【问题讨论】:
标签: html css printing styles media
我建议使用外部样式表,但如果您真的愿意,您可以在与 HTML 相同的页面上执行此操作,这样的示例就是这样,
HTML / CSS
<!DOCTYPE html>
<html>
<head>
<style>
@media print {
/* changes the display property to none on all
p elements when printed */
p { display: none}
}
</style>
</head>
<body>
<p>I'm here when the page isn't printed</p>
</body>
</html>
【讨论】:
style 标签不需要任何属性,它只是声明我们正在用 CSS 编写,@media print {} 应该可以工作。确保这是要加载的最后一点 CSS。
@media print 将允许您在打印或打印预览时向元素添加/更改样式。
在 CSS 样式块中使用 @media print 查询:
<style>
@media print {
/* print css here */
}
</style>
【讨论】:
确保您的结束样式标记 () 在 @media 打印查询的末尾和结束标记之间有一个空格。像这样:
@media print {
stuff {more stuff;}
} </style>
右大括号,空格,然后是结束标记。
【讨论】: