2

我在使用带有Zurb Ink 电子邮件框架的桌面/移动显示/隐藏功能时遇到问题。当我使用下面的 CSS 时,它在 GMail 中正常工作,其中隐藏了移动内容,只显示桌面,但在 Outlook 中不显示。但是,使用默认的 Ink CSS(在 上没有!important标志display: none)它在 Outlook 中有效,但在 GMail中无效。我正在使用 Outlook 2010。

我从这个 Gist中获得了一些灵感,我正在使用这个 CSS:

div.gmail .show-for-small,
div.gmail .hide-for-desktop {
    display : none !important;
    mso-hide: all !important;
}

这是我的电子邮件标记:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="viewport" content="width=device-width"/>
        <style type="text/css">
            <!-- my inline styles in here -->
        </style>
    </head>
    <body>
    <!--[if !mso]><!-->
    <div class="gmail">
    <!--<![endif]-->
    <table class="body">...</table>
    <!--[if !mso]><!-->
    </div>
    <!--<![endif]-->
    </body>

我错过了什么?

Zurb 有一个断点,位于 600px,所以我不想更改它。Zurb 提供的 Ink CSS 可以在这里看到。

4

2 回答 2

2

当我最终深入了解它时,我会自己发布一个答案(至少对于 GMail、Mobile iOS 和 Outlook 支持)。

仍然坚持使用 Ink 的默认类,我将可见性类更改为:

.show-for-small,
.hide-for-desktop {
    display     : none;
    max-height  : 0;   /* Gmail */
    mso-hide    : all;  /* Outlook clients */
    overflow    : hidden;  /* Generic */
    font-size   : 0 !important;  /* Be careful with this one, only use if absolutely required */
    line-height : 0;
    padding     : 0 !important;
}

然后在 600px 断点处的“移动”视图中,我这样做是为了从根本上扭转我在上面所做的更改:

@media only screen and (max-width : 600px) {
    table[class="body"] .show-for-small,
    table[class="body"] .hide-for-desktop {
        display     : block !important;
        max-height  : 100% !important; /* Gmail */
        mso-hide    : none !important; /* Outlook clients */
        overflow    : visible !important; /* Generic */
        font-size   : 14px !important; /* Be careful with this one, only use if absolutely required */
        line-height : 100% !important;
        height      : 100% !important;
        width       : 100% !important;
    }
}

我希望这有助于使用 Zurb Ink 1 的人,并且手指交叉 Zurb 在 Foundation for Emails 发布时解决了这个问题。

于 2015-09-24T16:32:18.567 回答
0

我用它来隐藏 Outlook 中仅限移动设备的内容

<!--[if !mso]><\!-->
Mobile Only Content
<!-- <![endif]-->

if 块内的所有内容都不会在 Outlook 中呈现。

于 2016-08-01T20:06:38.040 回答