gpt4 book ai didi

css - 用于保留 .html 导入的 部分的 Outlook 2010 VBA 脚本

转载 作者:行者123 更新时间:2023-11-28 08:38:29 26 4
gpt4 key购买 nike

提前致谢。我一直在研究各种允许使用 VBA 将 html 代码或 .html 文件导入 outlook 2010 电子邮件的方法,但令我沮丧的是,我注意到所有导入技术似乎都会导致 HEAD 中包含的所有样式元素被剥离。

例如,当使用具有相同 html CSS 代码的 Thunderbird 时,它可以完美地工作,并且在发送收件人时,尽管有客户端(gmail、yahoo 等),但似乎也获得了样式。 Thunderbird 通过简单的 HTML 输入完美地完成了这项工作。那么,为什么我要尝试使用 outlook 来实现这一目标呢?简单的说客户想用outlook 2010。

我很难相信没有一些巧妙的解决方法可以防止 Outlook 在发送电子邮件时剥离此内容,同时保留 HEAD 内容,以便响应式样式正常工作。

这是我到目前为止一直在使用的

VBA 引用

  • Visual Basic 应用程序
  • Microsoft Outlook 14.0 对象库
  • Microsoft Office 14.0 对象库
  • Microsoft Word 14.0 对象库
  • OLE 自动化

被剥离的代码

<head>
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />

<style type="text/css">

body{width:100%;margin:0px;padding:0px;background:#444444;text-align:center;}
html{width: 100%; }
img {border:0px;text-decoration:none;display:block; outline:none;}
a,a:hover{color:#ee7716;text-decoration:none;}.ReadMsgBody{width: 100%; background-color: #ffffff;}.ExternalClass{width: 100%; background-color: #ffffff;}
table {border-collapse:collapse; mso-table-lspace:0pt; mso-table-rspace:0pt; }
.padtop10 {padding-top:10px;}
.main-bg{ background:#444444;}
.pads {padding:0px 15px 0px 15px;}
.mobdes{font-size:10px;}
@media only screen and (max-width:640px)

{
body{width:auto!important;}
.padtop10 {padding-top:0px;}
.main{width:100% !important;margin:0px; padding:0px;}
.two-column{width:100% !important;margin:0px; padding:0px;}
.mobileCenter{width: 100% !important; text-align: center!important;}
.two-left{width: 100% !important; text-align: center!important;}
.date{font:Bold 14px Arial, Helvetica, sans-serif; color:#ee7716;}
.mobdes{font-size:8px !important;}
.customobpad{padding-top:30px !important;}

}

@media only screen and (max-width:479px)
{
body{width:auto!important;}
.padtop10 {padding-top:15px;}
.main{width:100% !important;margin:0px; padding:0px;}
.two-column{width:100% !important;margin:0px; padding:0px;}
.mobileCenter{width: 100% !important; text-align: center!important;}
.two-left{width: 100% !important; text-align: center!important;}
.date{font:Bold 12px Arial, Helvetica, sans-serif; color:#ee7716;}
.mobilogo {height:49px; width:190px !important; padding-left:15px !important; margin-left:-15px;}
.pads {padding:0px 18px 0px 28px;}
.mobdes{font-size:8px !important;}
.customobpad{padding-top:30px !important;}
}
@media only screen and (max-width:800px)
and (orientation : landscape) {
body{width:auto!important;}
.padtop10 {padding-top:5px;}
.main{width:100% !important;margin:0px; padding:0px;}
.two-column{width:100% !important;margin:0px; padding:0px;}
.mobileCenter{width: 100% !important; text-align: center!important;}
.two-left{width: 100% !important; text-align: center!important;}
.date{font:Bold 12px Arial, Helvetica, sans-serif; color:#ee7716;}
.mobilogo {height:39px; width:172px; padding-left:15px !important; margin-left:-15px;}
.pads {padding:0px 18px 0px 28px;}
.mobdes{font-size:8px !important;}
.customobpad{padding-top:30px !important;}
}



</style>

</head>

用于导入的 VBA 宏代码

Sub InsertHTMLClean2()
Dim insp As Inspector
Set insp = ActiveInspector
If insp.IsWordMail Then
Dim wordDoc As Word.Document
Set wordDoc = insp.WordEditor
Dim FileToOpen As String
FileToOpen = InputBox("filename?")
wordDoc.Application.Selection.InsertFile FileToOpen, , False, False, False
End If
End Sub

我很欣赏许多开发人员说 outlook 2010 无法保留头部信息,但我想知道是否有人找到了可行的解决方案。我主要对保留 MEDIA QUERIES CSS 感兴趣,因为在其当前状态下,移动样式正在中断。如果没有关于如何在 outlook html 电子邮件中重新训练媒体查询 CSS 样式的任何建议。

再次感谢。

最佳答案

您可能知道 Outlook 使用 Word 作为电子邮件编辑器。这就是您看到 Thuderbird 和 Outlook 之间差异的原因。以下系列文章提供了与受支持和不受支持的 HTML 元素、属性和级联样式表属性相关的引用文档。

关于css - 用于保留 .html 导入的 <head></head> 部分的 Outlook 2010 VBA 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27914202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com