2011-04-19 272 views

回答

1

首先,它不允許所有的CSS和HTML標籤是非常重要的。我會查找該文件並允許定義一組HTML標記和CSS屬性。

例如,如果您重置CSS,你仍然可以送的東西一樣,<form>和所有其他可能惡意代碼。

因此,我會開始思考你想支持哪種HTML標籤,並將其他所有標籤剝離掉。然後CSS也是一樣。

這絕非易事。我的意思是,你也必須考慮到人們試圖破壞你的翻譯...

你可以看看這個Sitepoint Blogpost,它描述了人們應該如何編碼HTML電子郵件。因此,從那裏開始並查看通常支持的內容可能是一個好主意。

+0

謝謝..我正在實施一個rails應用程序。有跟隨您的建議,這個好文章... [http://brisy.info/rendering-email-in-rails/](http://brisy.info/rendering-email-in-rails/) – 2011-04-19 07:56:59

-2

的一句話回答可以是「1,使用基於表格的佈局,僅2內聯CSS和3 在每一個電子郵件客戶端可能的測試。」

客戶端測試可能是最重要的,因爲每一個電子郵件客戶端(客戶端和瀏覽器+組合)都可能有自己的怪癖,很多都只是沿途的教訓;如使用HTML屬性寬度01​​高度,因爲Outlook將不會總是遵循寬度&高度內聯樣式,或Gmail中往往添加圖像周圍的利潤,除非你明確地設置保證金:0的HTML元素,等等,等等

當固定的HTML電子郵件的一個客戶端的外觀最終打破它在另一個客戶端,不繼續增加更多造型:儘量簡化 HTML/CSS,即使這意味着寫更多的標記。例如,如果填充和邊距看起來不正確,則可以通過向表中添加更多行或列並固定其高度/寬度來實現相同的外觀。更多標籤比擔心所有電子郵件客戶端如何呈現CSS盒模型更簡單。

HTML-for-email上有很多文章和博客文章,如http://articles.sitepoint.com/article/code-html-email-newsletters,這些文章和博客文章很有幫助 - 儘管很多文章和新版本的客戶端都過時了。

+0

問題是如何顯示像gmail一樣的html電子郵件。不是如何創建HTML電子郵件 – 2011-06-19 17:04:01

+0

我沒有在問題中看到Gmail的提及,但道歉給予與您無關的信息。 – 2011-06-27 17:31:14

相關問題