2015-06-29 74 views
1

我在Thymeleaf + Spring MVC上有一個項目,並嘗試使用Thymeleaf發送HTML電子郵件。引用HTML電子郵件中的CSS文件

我的印象是,我唯一需要做的就是創建一個模板文件,並像我一直在爲常規頁面所做的那樣傳遞參數。看起來我錯了。當我這樣做時,它不適用CSS。 (事實上​​,它甚至不涉及CSS文件。)我不知道Google是否是移除CSS文件或者所有郵件客戶端所做的事情。

它看起來像谷歌也編碼的HTML元素的類和ID,所以是我唯一的選擇使用內嵌CSS或有辦法引用HTML電子郵件中的CSS文件?

<img src="some_url" class="CToWUd"> 

以上是img標籤在Gmail上的樣子。它應該是這樣的,雖然:

<img src="some_url" class="topImage" /> 

在此先感謝

+0

https://css-tricks.com/using-css-in-html-emails-the-real-story/ – loli

回答

1

不幸的是,支持很差鏈接到HTML電子郵件外部樣式表。

此外,Gmail的實際上是從headbody都去掉style標籤,讓你真正需要推動所有的風格直列您發送之前,以確保Gmail不會刪除它們。

Campaign Monitor有一個很棒的CSS Support Guide,它概述了您可以和不可以跨所有電子郵件客戶端使用。

+0

就像你說的,我不得不推動所有的樣式內聯才能工作。感謝CSS支持指南,它確實幫助我選擇使用什麼。 – Jail

3

是很常見的,從電子郵件被自動刪除head標籤,Gmail的絕對做到這一點。

嘗試引用body中的樣式表代替。

如果做不到這一點,你可以把CSS的style標籤在身:

<html> 

<body> 

<style> 
    p { 
     // style here 
    } 
</style> 

// Rest of HTML here 

</body> 

</html>