1

印刷時に、HTML 形式のメッセージで表を非表示にしたいと考えています。class="noprint" 属性があります。他の礼儀正しいメール クライアントは、CSS ルールとメディア クエリを尊重します。これらの場合は、基本的なスタイルシートを追加するだけです。

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

この記事からわかるように、Outlook と Word はメディア クエリをサポートしていません。

誰かが回避策を知っていますか?

4

2 に答える 2

3

これには、条件付き CSS の回避策があります。このコードをメインの css ファイルに追加します。

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

お役に立てれば。

于 2013-10-14T08:39:32.063 に答える
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また、ネストされたテーブルを含むテーブル セル内のコンテンツを非表示にしようとしている場合は、このプロパティをすべてのネストされたテーブルにも適用する必要があることに注意してください。

于 2016-08-18T09:24:23.223 に答える