Html Outlook电子邮件中的相同链接-为什么只有一个呈现为有效URL?

Html Outlook电子邮件中的相同链接-为什么只有一个呈现为有效URL?,html,email,outlook,Html,Email,Outlook,我正在使用的系统会向用户发送电子邮件。通过从模板加载,然后用适当的信息在文本中填充占位符,可以创建这些内容 许多电子邮件都有一个指向系统网站的链接。这有两种形式:带下划线的普通文本链接和人造按钮 当我让系统向我的hotmail帐户发送电子邮件时,这两种方式都可以工作。但是,当同一封电子邮件发送到Outlook 2007时,只有文本链接起作用。如果将鼠标悬停在按钮上方,则会显示一个空白URL“http://”,单击该URL会打开一个新的浏览器窗口 检查生成的HTML,两个链接都有一个有效的目标 &

我正在使用的系统会向用户发送电子邮件。通过从模板加载,然后用适当的信息在文本中填充占位符,可以创建这些内容

许多电子邮件都有一个指向系统网站的链接。这有两种形式:带下划线的普通文本链接和人造按钮

当我让系统向我的hotmail帐户发送电子邮件时,这两种方式都可以工作。但是,当同一封电子邮件发送到Outlook 2007时,只有文本链接起作用。如果将鼠标悬停在按钮上方,则会显示一个空白URL“http://”,单击该URL会打开一个新的浏览器窗口

检查生成的HTML,两个链接都有一个有效的目标

<td width="160" align="center" valign="middle">
     <table width="100%" border="0" cellpadding="0" cellspacing="0" class="mobile_hide">
        <tbody>
          <tr>
             <td width="560" align="left" valign="top" style="font-size:14px; color:black; padding-bottom: 80px;">Please <a href="[valid link to site, with large querystring]" style="color: #009ddb; text-decoration: underline">choose a new password here</a>.</td>
          </tr>
        </tbody>
     </table>
  </td>
  <td width="280" align="center">
     <table width="280" border="0" cellpadding="0" cellspacing="0" align="center">
        <tr>
           <td width="280" align="center" valign="middle" style="color: #FFFFFF; background-color:white; width:280px">
                <div>
                    <!--[if mso]>
                    <v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="http://" style="height:40px;v-text-anchor:middle;width:280px;" arcsize="63%" strokecolor="#32b8eb" fill="t">
                    <v:fill type="tile" />
                    <w:anchorlock/>
                    <center style="color:black;font-size:16px;width:280px;font-family:Calibri;">RESET YOUR PASSWORD NOW</center>
                    </v:roundrect>
                    <![endif]--><a href="[valid link to site, with large querystring]" style="border:1px solid #32b8eb; border-radius:25px;display:inline-block;font-size:16px;line-height:50px; text-align:center; text-decoration:none;height:50px;width:280px;-webkit-text-size-adjust:none;mso-hide:all;color:black;">RESET YOUR PASSWORD NOW</a>
                </div>
       </td>
    </tr>
 </table>
</td>

为什么Outlook中的按钮电子邮件未正确呈现?它不可能是一个全面的安全功能,因为文本链接工作正常。

我猜测第二个href是不工作的。原因是您实际上有三个HREF,但只有两个结束标记。Outlook特定代码中的第二个缺少结束标记,并干扰了底部href

<!--[if mso]>
  <v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="http://" style="height:40px;v-text-anchor:middle;width:280px;" arcsize="63%" strokecolor="#32b8eb" fill="t">
  <v:fill type="tile" />
  <w:anchorlock/>
  <center style="color:black;font-size:16px;width:280px;font-family:Calibri;">RESET YOUR PASSWORD NOW</center>
  </v:roundrect>
<![endif]-->

具体来说,就是这一行:

关闭或删除Outlook代码中的语句。它现在什么都不做,只会干扰你的屁股。你的底部href应该开始工作了

祝你好运

编辑


特定于Outlook的href将由
关闭。不需要额外的
。我认为代码来自。预期的行为是将url放在一个按钮图形上,您可以将其用作备用按钮,类似于
https://buttons.cm/button.jpg
。由于没有url,只有一个
http://
,我认为这仍然是导致Outlook出现问题的原因。如果我有所有的代码,我会测试它,但我没有。我只是想将此添加到我的修复程序中,以帮助遇到类似问题的任何人找到更好的解决方案。

对于后续跟进的任何人来说,都要100%清楚:是outlook代码中的空href标记造成的-链接也必须放在那里。