2014-12-05 120 views
-1

我正在研究一些oracle代码来生成HTML电子邮件。它主要工作,但是我将所得到的HTML放在Dreamweaver CS6中以使用验证。我得到一些错误:HTML 4.01 HTML电子邮件错误

1)否在文件级声明字符编码[HTML 4.01]

2)元素 “U” 未定义[HTML 4.01]

HTML代码是自动生成的富文本编辑器小部件。我应该使用HTML 4.01以外的东西吗?我对HTML标题代码不太了解。

下面是从我的测试生成的HTML代码。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"> 
<html>  
    <head> 
     <title>Saint Susanna Parish Mailing</title> 
    </head>   
    <body> 
     <p>This is normal text</p> 
     <p> 
      <strong>This is bold</strong> 
     </p> 
     <p> 
      <u>This is Underscored</u> 
     </p> 
     <ol> 
      <li> 
       <span style="color:#ff0000;">This is numbered</span> 
      </li> 
     </ol> 
     <ul> 
      <li>This is bulleted</li> 
     </ul> 
     <p style="text-align: center;">This is centered</p> 
     <p> 
      <span style="font-size:18px;"><span style="font-family: times new roman,times,serif;">This is a new font</span></span> 
     </p> 
     <p style="text-align: right;">This is right justified</p> 
     <p>&nbsp;</p> 
    </body> 
</html> 

感谢您关注此事。

+1

我觉得编码可以在邮件标题中指定,所以我不会太担心这一点。 'u'在[HTML 4.01](不赞成使用)(http://www.w3schools.com/tags/tag_u.asp)但并未过时,所以这就是验证器似乎错了的地方。不过,我不会强调文本,因为很明显,文本可能很容易被误认为链接。如果你需要,而且你不想使用'',你可以使用内联'文本修饰'风格。 – GolezTrol 2014-12-05 17:12:23

+0

感谢您的回复。因此,您的评论“我认为可以在邮件标题中指定编码”,您是说我应该改变标题中的内容或忽略验证器的警告? – user3138025 2014-12-05 17:16:35

+0

确实。我在答案中提供了信息,因为它成了一个真正的完整答案。 :) – GolezTrol 2014-12-05 17:21:45

回答

-3

几点建议:

U可以通过使用类等做了很多控制 - 中,美先打电话以及一个style.css的文件中声明。

<!DOCTYPE HTML> - HTML 5 

    <b> and </b> can replace strong to save characters 

    <link rel="stylesheet" type="text/css" href="../style.css" title="Standard Style"> 
+0

谢谢。如何为html电子邮件添加样式表? – user3138025 2014-12-05 17:18:44

+4

当涉及到电子邮件模板时,这是一个非常糟糕的主意。每个电子邮件客户端以不同的方式工作。坚持基础。即使是可怕的“桌子”也是避免问题的好办法。 – melancia 2014-12-05 17:21:05

+0

即使加载,外部文件也会导致问题。 – melancia 2014-12-05 17:22:10

2

我认为编码可以 - 并且必须在邮件头中指定,所以我会忽略该警告。

文章The Importance of Content-Type Character Encoding in HTML Emails说:

[客户]将根据已设置了什么内容类型显示电子邮件。 但是,电子邮件客户端读取在 电子邮件标题设置Content-Type的价值,他们完全忽略META标签是内 的HTML。

因此,这表明您应该添加适当的标题,并且可以安全地忽略验证器的警告,尽管它也不会伤害所有添加元标记。

如果你想第二个意见,你可以尝试W3C Markup Validation Service,虽然我们也可以抱怨缺少的内容类型。毕竟,这些验证器不知道你要提供什么标题。

适用不同的规则HTML邮件反正。客户基本上忽略身体以外的所有事物。它们还过滤掉各种属性,不允许使用JavaScript并完全忽略外部样式表和内联样式标签。

<u>标签为deprecated in HTML 4.01,但没有过时。在这种情况下,验证器似乎是错误的,所以我会忽略该警告。尽管如此,我根本不会强调文本,因为显然文本很容易被误认为是一个链接。如果您需要并且不想使用<u>,则可以使用内联text-decoration样式。

+0

谢谢。我向标题添加了建议的文本,并删除了验证错误。谢谢。作为我的测试的一部分,我尝试使用oracle富文本小部件的每个部分。有人使用和下划线的可能性很小。感谢您的帮助 – user3138025 2014-12-05 17:26:46

+1

这是肯定的答案。 – melancia 2014-12-05 17:31:37