2013-10-11 63 views
1

打印時,我想在HTML格式的消息中隱藏表格。它有一個class =「noprint」屬性。其他彬彬有禮的郵件客戶端尊重CSS規則和媒體查詢,併爲他們所有我需要做的就是添加一個基本的樣式表:在Microsoft Outlook中打印時隱藏HTML元素

@media print { 
    .noprint { display: none; } 
} 

我從this article了Outlook &字不支持媒體查詢看到。

有誰知道解決方法?

+0

不,我不認爲有一個解決方法。 –

+0

沒有解決方法。請參閱http://stackoverflow.com/questions/17110928/outlook-2007-10-13-style-media-print-work-around –

回答

3

這是一個有條件的css解決方法。將此代碼添加到您的主css文件。

<!--[if gte mso 9]> 
    <style type="text/css"> 
     .noprint { display: none; } 
    </style> 
<![endif]--> 

希望這會有所幫助。

+0

這很有幫助,但我仍然希望在屏幕上顯示內容,而不是打印。 – KIsmay

0

mso-hide:all本身不起作用。它是Microsoft Word引擎的供應商特定屬性。爲了在桌面上隱藏/顯示移動狀態,您需要額外的屬性。這裏有您需要使用一些附加屬性:

*[class="hide"] { 
    max-height:0; /* Gmail*/ 
    display:none; /* Generic*/ 
    mso-hide:all; /* Outlook clients*/ 
    overflow:hidden; /* Generic */ 
    font-size:0; /* Be careful with this one, only use if absolutely required */ 
} 

然後在媒體查詢你想要覆蓋的任何設置爲隱藏的相對值。

還請注意mso-hide:all,如果您試圖隱藏包含嵌套表格的表格單元格內的內容,則必須將此屬性應用於任何及所有嵌套表格中。