2010-07-25 49 views
27

所以不是做使用CSS:有沒有什麼方法可以使用內聯樣式來定義:visited鏈接樣式?

<style type="text/css"> 
a:visited { 
    color: red; 
} 
</style> 

難道使用內聯代碼來完成。像這樣的東西不起作用:

<a href="http://google.com" style='a:visited:color:red'>Google.com</a> 
+2

有趣的,什麼是背後的原因,以實現這樣的風格? – Hoque 2010-07-25 15:22:20

+3

@原因是因爲發送電子郵件時,許多電子郵件客戶端無法導入樣式表,因此內聯CSS是讓內容正確呈現的首選方式。 – 2012-10-25 22:11:28

+0

@Georgy,JavaScript是唯一的方式,如果你想它工作內聯。 – Pacerier 2014-05-04 14:39:51

回答

17

你不能做到這一點,規範(CSS2這裏)covers it briefly here

無論是僞元素,也不是僞類出現在文件源或文檔樹。

:visited以及其他修飾符都是僞類,並且從來沒有一個標準的語法設置來做你正在嘗試的。老實說,這是我第一次見到它所要求的,所以我不認爲它會在不久的將來會被添加到規範中...對不起,這個答案很糟糕,但它是它的原因:)

0

不,這不是內聯樣式的工作方式。在規範中,瀏覽器似乎並不支持它。

0

否。Pseduoclasses(例如:first-child,:hover)用作基於行爲和與其他DOM元素的關係的選擇器。內聯樣式包含規則。即使在某些時候瀏覽器確實支持這一點,它會感覺很奇怪。

0

據我所知,它不被支持...但要補充一些澄清的原因想要做到這一點,因爲它肯定是在一個普通的網頁上做的次優方式,原因將是在HTML電子郵件中使用,除了某些好的電子郵件客戶端,它不支持常規樣式表,所以有必要定義所有內聯樣式以確保跨電子郵件客戶端的良好支持(Gmail和Outlook(呃))來)

當然,可以使用其他一些程序來導入樣式表並自動將其轉換爲內聯樣式,這更容易管理(這就是我所做的),但是您仍然可以在最終分析中使用內聯樣式。

1

我想補充一個動機,以實現不同的A HREF狀態這個內嵌樣式: 在某些頁面它可以在一個帶鏈接的文字出現在哪裏背景是從整體的背景不同。

「a」的主要CSS給了他們一種顏色,在特定區域和特殊區域不好。

由於這個原因,爲了讓用戶知道鏈接是鏈接,您需要爲其鏈接着色。

對我來說,它在<a href=".."標籤內設置了一些style="color: #5070BB;",但也許a:visited和a:hover顏色都不適合該背景,將它們設置爲內聯會很有用。

是的,這絕對是一個奇異孤獨的情況,但這是一個真實的案例。

Ciao!

3

確定您可以....

<a href="https://www.yahoo.com/" target="_blank"style="text-decoration: none; border-bottom: 1px solid pink;color:pink !important;"> 
      some link 
     </a> 

jfiddle

相關問題