2010-11-02 70 views
3

我有以下的網站上顯示可點擊的圖像(無邊框):圖片邊框採用CSS

<a href="link"><img src="img" border="0" /></a> 

然而,這並不是嚴格的XHTML 1.0,所以我改變了它太:

<img src="img" class="mystyle" /> 

而CSS:

mystyle img 
{ 
    border: 0px; 
} 

但是在Safari &鉻這隻作品和在IE & FireFox中不起作用。

據我所知,W3驗證是沒有必要的,但不知道是否有人已經碰到過這一點,並有可能修復:)

編輯:風格是一個錯字,我的意思是類;)

謝謝

回答

6

需要一些變化( 我很驚訝地聽到,它工作在 任何瀏覽器 ,以及看起來像基於WebKit的瀏覽器不把周圍圖片鏈接的邊框,如@Adriano在他的評論中提到

的Html

<img src="img" class="mystyle" /> 

因爲style屬性是directely分配屬性值,並且不引用一個CSS規則。 class屬性用於此。

CSS

.mystyle 
{ 
    border: 0px; 
} 

因爲要表示一個階級統治你把.它(#對於IDS)。我們從那裏刪除了img,因爲這意味着您想要設置img類型的標籤,該標籤包含在具有mystyle類的其他元素中。

+0

這就是訣竅......就是這樣。 :)謝謝 – 2010-11-02 14:49:36

+0

歡迎您@ ing0。 – 2010-11-02 14:50:26

+0

謝謝。我現在感到驚訝,它在Safari/Chrome中工作。正如我上面提到的,我的意思是類,而不是我的HTML代碼片段中的樣式。也許它足夠聰明來解決它? ^^ – 2010-11-02 14:57:40

2

你的CSS缺少「。」在mystyle前面。這是你想要的CSS:

.mystyle img { border:0px; }

在你的html中,使用「class」標籤,而不是「style」標籤。如果包含在行Css中,則會使用樣式,例如:

<img href="img" style="border: none;" /> 
0

是不是應該是<img src="img" class="mystyle" />

0

我的問題是,你不抓住CSS屬性。 應該**.**mystyle img

<a href="link" ><img style="border: 0px" src="http://www.google.com/images/nav_logo16.png" /></a> 
2

首先,它應該是class="mystyle"沒有style="mystyle"

其次,由於<img>標記與mystyle類相同,因此您的CSS是錯誤的。

你定義的CSS是一種叫做mystyle一個元素是另一個元素的內部調用img

您真正想要定義樣式的方式是img.mystyle

所以,你的CSS代碼應該是這樣的:

img.mystyle { 
    border:0px; 
} 

,你的HTML應該是這樣的:

<img src="img" class="mystyle" /> 

說實話,雖然,我更願意有這樣的申請所有圖像,所以我不會打擾mystyle位;只需要img的樣式表條目來刪除任何邊框。如果您以後需要將某個圖像添加到特定圖像,則可以始終覆蓋該圖像,但我寧願將其默認關閉。

至於神祕的原始代碼如何在Chrome/Safari而不是Firefox/IE中工作:我懷疑Chrome/Safari已經放棄了默認邊框。所以它不是那麼適合你,更重要的是那些瀏覽器甚至不需要你這樣做,而Firefox和IE仍然使用默認的圖像鏈接的默認樣式,默認情況下給它們一個邊框,這樣他們就可以需要覆蓋。