代码之家  ›  专栏  ›  技术社区  ›  David Weinraub

Outlook2007的解决方法是用边距环绕图像换行文本?

  •  11
  • David Weinraub  · 技术社区  · 15 年前

    众所周知,outlook 2007使用word2007呈现引擎,在设计html电子邮件时引起了无尽的悲痛。特别是,浮点数、边距和填充-我们说呢?-支撑力差。

    要模拟浮动,使文本环绕图像,显然我们可以简单地使用:

    <img src="foo.png" align="right">
    

    问题是填充/边距。没有填充/边距,包装好的文本与看起来很傻的图像对接。一种解决方法是编辑图像并添加模拟边距的透明框架。

    有人知道其他的解决办法吗?

    6 回复  |  直到 11 年前
        1
  •  7
  •   Darren Westall    14 年前

    我今早已经试过了,可惜的是arnt支持图片的边框,不过,你可以在文本区域实现这个概念:)。

    左边框:7px实心fff;

    例如,在一个白色的容器内,会产生左填充的视觉效果….

        2
  •  19
  •   lawless    13 年前

    在阅读了微软关于outlook 2007支持的文档后,我发现在图像上使用hspace可以在其周围创建类似于填充的空白。

    [img src=“image.jpg”align=“left”border=“0”hspace=“10”]

    这将给你相当于10像素的填充。在电子邮件客户端上工作得很好。

    我想我会分享一下,以防有人像我一样在谷歌上偶然发现这个问题。

        3
  •  5
  •   Ecksley    11 年前

    outlook'07中支持填充的一个地方是 <td> 标签。所以我把图像放在一张桌子里解决了这个问题:

    <table cellspacing="0" cellpadding="0" border="0" align="left">
    <tbody>
        <tr>
            <td>
            <table cellspacing="0" cellpadding="0" border="0" align="left">
            <tbody>
                <tr>
                    <td valign="top" style="padding: 0px 10px 0 0;">
                    <img src="http://www.mysite.com/images/myimage.jpg" style="width:60px; height:100px;" border="0" />
                    </td>
                </tr>
            </tbody>
            </table>
            <p>The text I want to see wrap...</p>
            </td>
        </tr>
    </tbody>
    </table>
    

    注意 align="left" 在父表上以及立即保存图像的表上。这是2013年展望所需要的。在石蕊上没有它,其他的一切看起来都很好。

        4
  •  2
  •   Brandon    13 年前

    为Outlook和所有其他电子邮件客户端在图像中添加填充。 我发现这个有用。

    img {  
        padding-left: 25px!important;  
        padding-top: 25px!important;  
        padding-bottom: 25px!important;  
        padding-right: 25px!important;  
    }
    
        5
  •  0
  •   Darren westall    14 年前

    我知道这条线是旧的,但另一种选择是给图像一个与容器颜色相同的纯色边框。

        6
  •  -3
  •   canintex    15 年前

    如果使用如下margin命令向img标记添加内联样式:

    <img src="foo.png" align="right" style="margin:5px;">
    

    我猜这就是你想做的。