2011-09-29 25 views
2

有沒有人有使用空表,錶行或表格單元格作爲佈局分隔符的經驗?HTML電子郵件 - 空表/ TR/TD作爲分隔符

我一直在各種電子郵件客戶端(Mail,Entourage,Gmail等)測試我的HTML電子郵件,Gmail似乎對空表格單元格有不同的反應(根本不考慮它們)。我在表格的CSS中使用「empty-cells:show」以及非破壞空格,但仍然沒有運氣。如果可能,我絕對不想使用圖像作爲間隔符。

+0

不能使用CSS的空間邊距,填充,還是相對定位? –

回答

0

使用 來「填充」空單元格中的空間。

10

如果你想使用空TD-S代替墊片,你應該提供的寬度和高度,以及這樣的:

<td width="111" style="font-size:1px;line-height:21px;">&nbsp;</td> 

你可以在這裏看到我用的line-height用於設置表格單元格高度而不是高度=「21」。這將在所有主流瀏覽器和電子郵件客戶端(即使是較舊的瀏覽器)中呈現,例如蓮花筆記。只要確保字體大小總是小於行高。

這樣你就不再需要使用墊片了。 還有一件事。在TR中,除了在TD-S內有圖片時,您不需要放置任何東西。 Gmail中有一些問題的渲染圖片,所以我這樣固定的:

<tr style="font-size:0px; line-height: 0px;"> 
<td width="135" valign="top" align="left" height="120" > 
<img width="135" height="120" border="0" alt="" src="image source here"> 
</td> 
</tr> 
+0

我很抱歉地說這似乎不適用於Apple的Mail應用程序(版本6.3(1503))。有關如何解決這個問題的任何建議? – sleeke

+0

不用擔心。我通過在每個空單元格中使用' '並在底部添加一行,使用'colspan = 3'跨越所有3個單元格的單個列來將其固定在我的3單元格表格中(空的,填充的,空的)。 – sleeke

+0

有誰知道我們是否可以避免將空td的寬度設置爲100%寬度,以便父表屬性可以有一個寬度屬性來控制事情需要的寬度? – blackhawk

1
使用& NBSP

好;而不是一個間隔,你總是用堆疊來指定一個帶有樣式標籤的行高,如果你不是這樣的話。將默認爲20px行高。

2

某些電子郵件客戶端會摺疊一個空單元,即使它包含一個空格或者即使它的維度已分配。但是我發現如果你在空表中放置一個空表並且只給父節點指定維度,那麼所有的客戶端都會尊重父表是不是空的,因爲它包含了另一個表,因此它適用於所有的客戶端和設備。

爲了進一步提高兼容性,最好定義主要使用cellpadding和行數最少但高於3px的高度所需的尺寸。 td應該大於3px,因爲3px以下的任何內容都可能被忽略。但應該接近3px,因爲如果通過cellpadding獲得尺寸,cellpadding比行高將更受尊重。

例如,如果我想這是部18px高大的我分配的cellpadding 7和TD高度4所出(7×2)+ 4 = 18

<table border="0" cellpadding="7" cellspacing="0" width="100%"> 
    <tr> 
     <td height="4"> 
      <table border="0" cellpadding="0" cellspacing="0"> 
       <tr> 
        <td></td> 
       </tr> 
      </table> 
     </td> 
    </tr> 
</table>