2017-06-02 18 views
0

* UPDATE *我应该已经明确,或许更简洁。我工作的公司的“Web”团队向我发送了HTML。正如我所说的,由于窗口(SSIS) - > UNIX(SAS) - >主机(EBCDIC),我不能使用任何带,除非它的内容,然后我要在ASCII相当于硬编码!所以,为了缩短我的问题 - 我需要使用嵌套表格来创建表格,该表格具有背景图片,顶部有白色文字。该解决方案需要在几乎所有的电子邮件&网络浏览器平台上工作。 (我们不关心真的老了,不再支持版本)展望HTML CSS背景透明细胞表内

另一种解决方案是如果有人知道如何发送EBCDIC代码分配(5A)来传递,而不是得到抬高,再Windows的> UNIX - >主机。我知道另一个从SAS发送x5A的团队,它可以工作。我真的很想避免将整个文件摄入SAS,只是为了做一个查找/替换,这也可能导致固定宽度的文件。但我可以想办法解决这个问题。 */UPDATE *

我扑我的头靠在这里的墙上。我正在写的HTML被用来作为内容的电子邮件 - 在一个地方有一个嵌套表的表 - 中外面有一个图像,里面有文字(如在文本框中)。我可以得到它在一切工作(测试EmailOnAcid) - 使用rgba作品,cept for ...是的前景 - 研究这(谷歌)我现在知道Outlook不支持rgba 。我试过背景色:透明。没有快乐。我试着不透明度:0,但使文本透明的(我觉得我接近上一个,但缺少的东西,也许明显)

附:不要问我为什么给我的代码有3个冗余引用的背景jpg。这个内容是给我的,现在我必须把它处理成一些能在我的系统中工作的东西。

事情我无法控制 -

  • 我不能让他们让我用文字在它的图像,他们正在奇怪了。
  • 由于产生从窗户跳到UNIX大型主机,我不能用任何文本文件!这不是电子邮件内容。 (即没有重要的是,没有! - 评论,这意味着如果没有像在注释中陈述[如果GTE MSO 9],...)
  • 有CSS的新标准漂浮 - 我不是一个球迷。但是公司的其他组织不会在Windows服务器上生成电子邮件文本文件 - 它们在SAS(unix/linux)中执行,然后在大型机上执行 - 因此它们可以使用ebcdic代码。如果我在我的文件中执行相同的操作,它将不起作用。 :(

下面的代码的块(与RGBA) - 相关的CSS是它下面

<table border="0" width="600" cellspacing="0" cellpadding="0" class="deviceWidth"> 
      <tbody> 
      <tr> 
       <td background="http://not.real.path/something.jpg" bgcolor="#c8c7bc" valign="top" width="600" height="258" style="background-image: url(http://not.real.path/something.jpg) no-repeat center center;" id="heroImg" > 

        <div id="txtCntr"> 
        <table border="0" width="340" cellspacing="0" cellpadding="0" style="margin:50px 5px 10px 25px;display:block;" class="heroTxtTbl"> 
         <tr> 
          <td align="left" valign="middle" style="display:block; background-color:rgba(0, 0, 0, 0);"> 

         <p href="#" style="margin:0;padding:5px 0;font-size:45px; line-height: 48px; color: #ffffff; font-family: Arial, Myriad, Helvetica, sans-serif;text-decoration: none;font-weight: bold;" class="heroTxt">We will<br>do something<br>really amazing.</p> 
          </td> 
         </tr> 
         </table> 

        </div> 
       </td> 
      </tr> 
      </tbody> 
     </table>  

背景CSS部分AR:

<style> 
.deviceWidth { 
width:100% ; 
height:auto 
} 
#heroImg { 
display:block; 
background-image:url("http://not.real.path/something.jpg"); 
width:100%; 
height: 250px; 
padding:0; 
} 
.heroTxt { 
font-size: 38px ; 
line-height: 40px ; 
} 
.heroTxtTbl { 
width: 80% ; 
float: left; 
margin:50px 5px 10px 25px; 
display:block; 
} 
.heroTxtEmp { 
font-size: 17px ; 
line-height: 22px ; 
} 
#txtCntr { 
padding:5px; 
} 

预先感谢任何帮助

+0

请张贴jsfiddle。编辑:从它的外观来看,你试图使透明的表格单元格,IS实际上是透明的。另外,为什么要放置整个.txtCntr元素,而不是将文本直接放在包含背景的表格单元上? – scooterlord

+0

而不是重写你的答案,要求更高,如果你尝试了我在下面发布的方法,该怎么办?尝试一下,如果没有Outlook的声明。如果它有效,你是金。如果没有,那么你的电子邮件将适用于除Outlook以外的大多数HTML电子邮件客户端。 – gwally

回答

0

好吧,秀..我不知道,如果在V:RECT,V:文本框的东西就在自己的工作,没有IF 我们尝试了

<v:rect xmlns:v="urn:schemas-microsoft-com:vml" fill="true" stroke="false" style="width:600px;height:258px;"> 
    <v:fill type="tile"src="http://navient.com/assets/images/email/pcc/NVT-17-14574_PCC_hero.jpg" color="#c8c7bc" /> 
     <v:textbox inset="0,0,0,0" style="v-text-anchor:middle"> 

blah blah tables and text and pix 

        </v:textbox> 
       </v:rect> 

和它的工作。它似乎没有损坏其他电子邮件客户端(通过emailonacid测试)...所以我们要去用它。

=)