2013-10-02 73 views
2

我在application.css.scss文件中的以下內容:如何在css中使用Rails 4的打印樣式?

@media print { 
    form, img { 
    display: none; 
    } 
} 

但是,當我試圖從我的網站打印頁面,頁面上的表格和圖像仍然出現在打印輸出上。

在發展中,application.css文件的頂部看起來是這樣的:

/* 
* This is a manifest file ... 
*/ 
@media print { 
    form, img { 
    display: none; } } 

什麼我錯在這裏做什麼?

+1

我認爲問題不在於該片段。驗證您的CSS文件是否正確添加... – cortex

+0

這發生在所有環境中? – dax

+0

當我在開發中查看源代碼時,相同的代碼在我的application.css文件中正確顯示。 – croceldon

回答

3

如果您不指定媒體類型,rails將默認爲「屏幕」,因此,您正嘗試在屏幕類型樣式表上使用打印查詢,這不起作用。爲了避免這個問題,你可以做的一件事是從視圖中調用樣式表時指定媒體類型。例如:

= stylesheet_link_tag "application", media: "all" 
= stylesheet_link_tag "application", media: "screen, projection" 
= stylesheet_link_tag "application", media: "print" 

我平時保持的CSS應用程序(包括需要樹清單)一個簡單的調用,並添加一個樣式表的鏈接標籤調用的CSS我通常命名爲「print.scss」指定介質類型,但我也必須記住添加應用程序清單:

*= stub print 

因此,此文件在兩種不同的媒體類型下不會被調用兩次。