2017-01-08 78 views
0

我通過電子郵件發送給我的列表20個左右文章的HTML摘要。名單成員要求在摘要中標記爲已讀個人帖子的能力。我想出了一個很好的方法來完成這項工作,它可以在本地工作(使用Chrome瀏覽器來讀取我生成的本地.HTM文件),但這對於我測試過的4個電子郵件客戶端中的任何一個都無效。需要CSS允許用戶標記爲閱讀摘要中的單個文章

這個想法是在每篇文章旁邊加上一個白色的,因此不可見的複選標記。然後我創建一個鏈接「將此帖標記爲已讀」,並將其發送到帖子某處的achor標籤。然後,這使得「網站」具有「訪問」的狀態,我的a:訪問規則指定一個可見的顏色(與未訪問鏈接相同的顏色),我使用!重要的是覆蓋「白色」顏色。因此,只有點擊了該複選標記才能看到:將此帖標記爲已讀。

整個事情是這樣的:

In <style>: 
a { color: #2020b7; } 
a:visited { color: #2020b7 !important } 

In <body>: 
<a name="post-1"></a> 
<a href="#post-1" style="color: #ffffff;">&#10004;</a> <== check mark 
<a href="#post-1">Mark this post as read</a> 

這是一個重建,在這裏打字,所以可能有錯別字。它在當地很好地工作。但是,Outlook 2010,Eudora 7,Gmail或Yahoo郵件似乎都不接受錨鏈接或使用此代碼玩球。

回答

0

對不起,我還不能評論。我想你需要的是餅乾:), 讀一下: 百科:https://en.wikipedia.org/wiki/HTTP_cookie

+0

哦,我開始「明白了」。我正在嘗試修改用戶硬盤上的字節表示的電子郵件。電子郵件不是一個動態的東西,所以當這些項目不是收到的字節的一部分時,我不能讓它們彈出。是對的嗎?我通過在瀏覽器中閱讀我的文件進行測試,這是完全不同的事情。或者,也許我只是激活已經存在的字節。我有點困惑。 –

+0

不,它應該能夠改變訪問過的鏈接的顏色。但我無法得到它。 –

2

這是一個聰明的想法!

最終我們會通過電子郵件客戶缺乏:visited鏈路狀態,這也許可以解釋爲什麼你沒有看到在一些電子郵件客戶端這項工作的支持被戴上手銬。

enter image description here source


CSS在<style>

a:visited, 
a:visited .checkmark { 
    color: #2020b7 !important; 
} 

HTML中<body>

<a name="post-1" style="color: #2020b7;"> 
    <span style="color: #ffffff;" class="checkmark">&#10004;</a> /* check mark */ 
    Mark this post as read 
</a> 

,你可以處理這個另一種方式是通過隱藏複選框

CSS在<style>

a:visited .checkmark { 
    display:inline !important; 
    font-size:10px !important; 
    color:#2020b7 !important; 
    line-height:10px !important; 
    max-height:auto !important; 
    max-width:auto !important; 
    opacity:1 !important; 
    overflow:visible !important; 
    mso-hide:none !important; 
} 

HTML中<body>

<a name="post-1" style="color: #2020b7;"> 
    <span style="display:none;font-size:1px;color:#{color};line-height:1px;font-family:{font};max-height:0px;max-width:0px;opacity:0;overflow:hidden;mso-hide:all; class="checkmark">&#10004;</a> /* check mark */ 
    Mark this post as read 
</a> 

但是這個例子也取決於suppo rt爲:visited鏈接狀態。

+0

我複製並粘貼了兩組代碼並進行了測試。都沒有工作。 「將此帖標記爲已讀」甚至不是主動 - 只是文本。那裏是不是應該有一個「href」?!我看到有人抱怨Outlook將訪問鏈接變成了紫色。我的問題(Outlook 2010)是,它根本沒有響應訪問。順便說一句,由於Outlook剝離了頭腦中的樣式,我也嘗試將它粘貼到具有「if(gte mso 9)|(IE)」的部分。沒有幫助。 –

+0

@HarryBinswanger是的,我不確定有什麼方法可以完成這項工作。 [展望**不**刪除''](https://www.campaignmonitor.com/css/),但有(如你所說)參差不齊':visited'。我_believe_ Outlook轉換鏈接紫色是一個應用程序樣式表,而不是由電子郵件標記設置的,但可能是錯誤的。 –

+0

然後,我必須通過使用某些元素在用戶點擊它時在所有電子郵件客戶端中執行操作來完成此操作。我能想到的唯一一個就是href跳轉到某個地方。所以我會看看我是否可以想辦法讓某個帖子旁邊的複選標記(或顯示)出現。 –

0

我沒能解決它我意識到,用戶可以做到這一切,更多的,他自己:他只需要點擊回覆,因爲他喜歡標記的回覆草稿,甚至添加評論。當他完成它時,他可以丟棄草稿或將其發送給自己。