是的,@media print
可以用來控制 Web 列印樣式。它是一個 CSS at-rule,允許你為列印頁面指定特定的樣式,這些樣式與螢幕上顯示的樣式不同。
當使用者列印網頁時,瀏覽器會應用 @media print
規則中定義的樣式,而忽略或覆蓋螢幕顯示的樣式。這使得你可以最佳化列印輸出,例如:
- 隱藏不必要的內容: 導航選單、廣告、側邊欄等在列印時通常不需要,可以使用
display: none;
隱藏它們。 - 調整佈局: 可以修改元素的尺寸、位置和浮動方式,以適應列印紙張的大小和方向。
- 控制分頁: 使用
page-break-before
、page-break-after
和page-break-inside
屬性來控制分頁符的位置,避免內容被截斷或列印在不同的頁面上。 - 使用列印友好的字型和顏色: 可以指定更適合列印的字型和顏色,例如黑色文字和白色背景。
- 顯示列印專用的內容: 可以新增僅在列印時顯示的內容,例如頁碼、頁首和頁尾。
示例:
@media print {
nav {
display: none;
}
article {
width: 100%;
}
h1 {
font-size: 2em;
}
a[href]:after {
content: " (" attr(href) ")";
}
@page {
size: A4;
margin: 1cm;
}
}
在這個例子中:
- 導航欄 (
nav
) 在列印時被隱藏。 - 文章 (
article
) 的寬度設定為100%
,以佔據整個列印區域。 h1
的字型大小增加。- 連結後面會顯示連結地址。
- 設定頁面大小為 A4,頁邊距為 1 釐米。
使用方法:
你可以將 @media print
規則新增到你的 CSS 檔案中,或者直接寫在 HTML 檔案的 <style>
標籤內。
總結:
@media print
是一個非常有用的 CSS 功能,可以幫助你建立更專業的列印輸出,提升使用者體驗。 透過它,你可以控制列印頁面的樣式,使其更易於閱讀和理解。