網頁制作頁面打印設置
作者:佚名 時間:2014-03-26 分享到:
打印從來就不是HTMl網站功能制作的強項。事實上,HTML和XHTML標準有意忽略了打印,因為打印要采用頁面布局,可是HTML和XHTMl沒有布局工具。
作者使用級聯樣式表來格式化和布置他們的HTML/XHTMl文檔內容,因此CSS2標準引入了某些基本分頁控制功能,以例作者幫助瀏覽器計算出如何最好地顯示他們的文檔,這一點聽起來并不覺得驚訝。這些功能被分為兩類:定義特定頁面布局的那些功能,以及控制文檔分頁的那些功能。
定義頁面
作為對框模式的擴展,CSS定義了“頁面框(pge box)”,就是在有限的區域內顯示內容的框。頁面框不必對應物理紙張,用戶代理會在打印的過程中把一個或多個頁面框映射到紙張上,許多小的頁面框可能符合單面;大的頁面框可以維放為符事一張紙的大小,或者根據瀏覽器的處理分開到多張紙上。
在打印過程中,內容流入頁面框中,它被適當地進行了分頁,并傳輸到硬拷貝輸出設備上的目標紙張上。頁面框的大小根據瀏覽器顯示窗口的不同而有很大差異,因此打印的文檔的流動和顯示也會與其屏幕上的表現完全不同。很多時候,要為自己的文檔取得一個特定顯示的外觀一般都是不可能的。但是,可以使用css2的分頁功能幫助瀏覽器以有效的方式打印文檔。
使用特殊的@page規則定義頁面框。@page關鍵字后面緊跟的是可選的頁面名稱,后面跟有用分號分開并包含在花括號中的屬性列表。這些屬性定義了頁面框的大小、邊界和外觀。
使用size屬性指定頁面框的大小。此屬性的值既可以是一、兩個長度值,也可以是portrait、landscape或auto這些關鍵字中的一個。如果提供了一個單獨的長度值,它會生成一個正方形,也就是將頁面的寬度和高度都設置為那個值。兩個長度值分別設置了頁面的寬度和高度。portrait關鍵字指定的是本地可接受的頁面尺寸,也就是高度大于寬度)(一般情況下是8 1/2比11英寸),而landscape使用的本地可接受的頁面尺寸是寬度大于高度(一般情況下是11比8 1/2英寸)。最后,auto生成的頁面框與在其上打印文檔的目標紙張尺寸相同。
一般情況下,應該使用特殊的pagesize關鍵字來確保文檔在本地環境下打印良好。使用:
@page normal{size:8.5in 11in}
這適合美國的情況,但是歐洲地區卻會失敗。相反,在歐洲要使用:
@page normal{size:portrait}
這在美國應該選擇8.5"x 11"的頁面,在歐洲則應該選用A4紙(規則中normal是指頁面的名稱)
使用@page規則內的margin、margin-top、margin-bottom、margin-left和margin-right屬性設置頁面的邊界。請記住,瀏覽器可以定義邊界以在目標表中顯示頁面框,因此你的邊界會加在那些邊界之上。沒有定義頁面框默認的邊界,而且它們是獨立于瀏覽器而存在的。
最后,使用@page規則中的marks屬性,可以用來在目標表上的頁面框之外創建剪切標記和記錄標記。默認情況下,標記不會被打印出來。你可以使用crop和cross關鍵字在目標打印頁面上分別創建標記和記錄標記