Khi tạo email HTML, chúng ta có nên sử dụng các thẻ html, head, body không?


113

Trong các chế độ xem email của mình, tôi thường chỉ làm một số việc như ...

<dl>
   <dt>Name</dt>
   <dd>Value</dd>
</dl>

Tôi có nên làm như thế này không?

<html>
  <head></head>
  <body>
    <dl>
       <dt>Name</dt>
       <dd>Value</dd>
    </dl>
  </body>
</html>

Nói cách khác, giống như tôi đang đánh dấu một tài liệu độc lập?

Tôi đoán tôi có thể an toàn cho rằng bất kỳ ứng dụng email khách dựa trên web nào sẽ loại bỏ nó?

Đúng cách là gì?


Đối với những gì nó có giá trị, Thunderbird kết quả đầu ra html, headbodythẻ trong thông điệp của nó.
palswim

Câu trả lời:


43

Cách đúng là tuân theo chuẩn HTML . Bạn có thể xác thực trang HTML của mình tại đây .

Ứng dụng thư của bạn nên làm theo nó và nên loại bỏ những gì không được hỗ trợ hoặc những gì không an toàn như javascript.

CẬP NHẬT: sau một số phiếu bầu từ những người tức giận khi bạn yêu cầu họ tuân theo các tiêu chuẩn, tôi sẽ tiết lộ một số lý do tại sao việc tuân theo các tiêu chuẩn có thể có lợi ở đây:

  1. một webmail sẵn sàng hiển thị thư của bạn dưới dạng trang đầy đủ, có thể giữ nguyên định dạng của bạn.
  2. webmail sẽ đơn giản loại bỏ các thẻ và thuộc tính mà nó không muốn. Nhưng bạn không thể không biết cái nào.
  3. Sẽ dễ dàng hơn để tìm các thành phần (phía máy chủ) tuân theo các tiêu chuẩn định dạng và do đó ít bị lỗi hơn. Các trình phân tích cú pháp không tuân theo các tiêu chuẩn có thể bị hỏng, khiến email của bạn không được hiển thị.

54
-1 Cách đúng là kiểm tra nó trong các máy khách có liên quan. Mặc dù ứng dụng thư phải tuân theo các tiêu chuẩn, nhưng hầu như không ai trong số họ làm như vậy.
Dan Blows

27
mschonaker là chính xác. Nếu mọi người bắt đầu tuân theo các tiêu chuẩn, thì việc sử dụng sẽ ... tốt ... được tiêu chuẩn hóa. Nếu không, tất cả các nhà phát triển phải thực hiện các bản hack cho hương vị của ngày hôm nay (hãy nghĩ đến bạn, IE6!). Cách ĐÚNG là tuân theo các tiêu chuẩn.
cjcela

4
Không có tiêu chuẩn cho "email html". Bạn đang hướng đến tiêu chuẩn cho html.
rds

2
Tôi đồng ý với câu trả lời này, trong khi dù sao nhiều máy khách cũng hiển thị html không hợp lệ thì định dạng đáng tin cậy nhất sẽ hiển thị trên hầu hết các máy khách là phải có html hợp lệ!
markmnl

3
Đây là câu trả lời chính xác. Loại mime của phần hoặc nội dung sẽ là văn bản / html. Bất kể bối cảnh, loại này phải được tuân thủ theo các tiêu chuẩn cho dù đó là trình duyệt web hay ứng dụng email. @cjcela có ý tưởng đúng, nếu tất cả chúng ta đều mắc kẹt trong việc hỗ trợ IE8 thì web sẽ không phát triển. Nếu chúng ta không tuân theo các tiêu chuẩn, làm thế nào HTML được kết xuất trong thư để phát triển? Những gì bạn nên làm là tuân theo các tiêu chuẩn, nhưng nhận ra rằng những thứ như bảng định kiểu trong heads có thể bị bỏ qua và có một dự phòng duyên dáng.
Brett Ryan

33

Việc bạn có bao gồm các thẻ html / head / body hay không hoàn toàn không liên quan - chúng luôn là tùy chọn và sẽ không ảnh hưởng đến việc hiển thị tài liệu theo bất kỳ cách nào.

Điều quan trọng nhất là chế độ quirks có được bật hay không. Rất tiếc, bạn không thể kiểm soát điều đó trong cài đặt webmail. Bảng và kiểu nội tuyến là bạn của bạn. Đặt cược tốt nhất của bạn là thử nghiệm càng nhiều ứng dụng khách webmail và máy tính để bàn càng tốt.



4
"chúng luôn là tùy chọn và sẽ không ảnh hưởng đến việc hiển thị tài liệu" đơn giản là không đúng, nhiều kết xuất ít khả năng chịu lỗi hơn và hoàn toàn có thể chọn không hiển thị html không hợp lệ.
markmnl

Điều gì xảy ra khi ứng dụng thư khách có liên kết "Xem email này trong trình duyệt"? Nó sẽ tùy thuộc vào trình duyệt mặc định để hiển thị HTML không hợp lệ.
Sergey

13

Nhiều bài viết trên chủ đề này đã khá cũ và kết quả là chúng không còn chính xác nữa.

Ngày nay, các email HTML nên bao gồm loại tài liệu, html và khai báo nội dung nếu bạn định làm bất cứ điều gì lạ mắt.

Có vô số hướng dẫn về chủ đề này có thể giúp bạn tìm hiểu cách mã hóa Email HTML đúng cách, nhưng hầu hết trong số họ đều bỏ qua các chi tiết cụ thể của loại tài liệu, đó là cách tôi vấp phải câu hỏi của bạn.

Tôi khuyên bạn nên đọc 2 bài đăng sau đây của các nhóm có uy tín quen thuộc với các vấn đề khác nhau:

giám sát chiến dịch đang thực hiện

email về axit


Thật buồn cười ... bạn nói các bài viết ở đây đã cũ và bạn đặt một liên kết trong câu trả lời của mình cho một bài đăng trên blog đã 7 năm tuổi!
Alexis Wilke,

2
Tôi đã làm, nhưng các bài đăng trên blog được chọn đã được lựa chọn cẩn thận do tính chất có thẩm quyền của chúng, và chúng khá mong đợi vào thời điểm đó. Những ý kiến ​​mà họ bày tỏ khá phổ biến vào thời điểm đó, đặc biệt là khi bạn đối chiếu với những khẳng định ngày tháng được chia sẻ bởi những phản hồi khác ở đây.
kamelkev 21/09/17

@AlexisWilke và một trong những liên kết thậm chí đã được đề cập ở đây 3 năm trước! Nhưng ít nhất nó đã có trong một câu trả lời ngay bây giờ nên tôi có thể cố gắng nâng nó lên danh sách bằng một
phiếu ủng hộ

11

Phụ thuộc hoàn toàn vào ứng dụng email nhận được nó. Theo kinh nghiệm của tôi, hầu hết các ứng dụng email sẽ thông dịch HTML không quan tâm đến việc bạn có các thẻ full body / head / html, v.v. Thực tế, bạn thậm chí không cần những thẻ đó cho hầu hết các trình duyệt. Bạn cần có các thẻ head để bao gồm phong cách / tiêu đề, v.v. Nếu không, chúng không thực sự cần thiết. Tôi chưa bao giờ thấy chúng cần thiết.


3
Các thẻ html / head / body luôn là tùy chọn.
Josh Lee

10

Có một điều tôi biết là đúng: Sử dụng thẻ mở và đóng HTML sẽ giúp chấm điểm thư rác nói chung do nhiều bộ lọc dựa trên công cụ và tường lửa phần mềm sẽ thêm một điểm vào email sử dụng html nhưng không sử dụng các thẻ mở và đóng.


11
Bạn có một số bằng chứng để hỗ trợ tuyên bố này không?
alex

10
Tôi đã quan sát thấy chính hành vi này trong vài ngày qua chỉ bằng cách "xem bản gốc" trong Gmail. Ở đó, tôi có thể thấy điểm thư rác cho email không có thẻ đóng mở: ví dụ: X-Spam-Level: * | X-Spam-Report: score = 1.6 tests = HTML_MESSAGE, HTML_MIME_NO_HTML_TAG, MIME_HTML_ONLY | X-Spam-Score: 1 - ví dụ: Xem wiki.apache.org/spamassassin/Rules/HTML_MIME_NO_HTML_TAG
Richard Hollis

1
Tôi cũng đã thấy điều này và một số công ty có ngưỡng kiểm dịch thư rác thấp đến mức việc thiếu các thẻ HTML có thể đủ để ngăn email của bạn lọt qua. Trang này không liệt kê các cài đặt chính xác có sẵn nhưng tôi đã thấy phần mềm để lại thông báo về quy tắc "HTML_MIME_NO_HTML_TAG", với mô tả "Thông báo chỉ có HTML, nhưng không có thẻ HTML." techlib.barracuda.com/BSF/SpamScoring
JHS

3

Tôi không nghĩ có cách nào đúng nhưng cố gắng làm cho email có thể xem được trong càng nhiều trình đọc email có thể xem được.

Tôi thường kiểm tra email trong Thunderbird, vì Outlook sẽ tha thứ nhiều hơn.

Trong Thunderbird, đây là mã HTML cho một email (tôi có một phần mở rộng hiển thị html)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
        This is the body text<br>
<div class="moz-signature"><i><br>
<br>
Regards<br>
Alex<br>
</i></div>
</body>
</html>

BTW, tôi sử dụng email văn bản thuần túy cho tất cả các biểu mẫu web của mình mọi lúc tôi có thể. Tôi gặp nhiều vấn đề với email blackberry bằng cách sử dụng html + email văn bản thuần túy.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.