2011-04-19 75 views
0

我有這樣的代碼在我的CSS粉色邊框在Firefox 4

img.hoverborder { 
     border: solid 4px transparent; 
     /*Propriété propre à Internet Explorer 6.0 */ 
     border-color: pink; 
     filter: chroma(color=pink); 
    } 
img.hoverborder:hover { 
     border-color: blue; 
    } 

這只是對IE6但是當我使用Firefox 4,我有一個粉紅色的邊框。 當我使用FireFox 4時,我該如何做一個透明邊框? Thx。

回答

1

從你的CSS中刪除IE6,唯一的代碼,並在你的HTML有條件片:

在你的CSS:

img.hoverborder { 
border: solid 4px transparent; 
/*Propriété propre à Internet Explorer 6.0 */ 
/*border-color: pink;*/ 
/*filter: chroma(color=pink);*/ 
/* IE6 stuff removed*/ 
} 

在你的HTML頭

<!-- your normal StyleSheet --> 
<link type="text/css" rel="stylesheet" href="css/StyleSheet.css"/> 
<!-- overrides for IE 6 --> 
<!--[if lte IE 6]> 
<style type="text/css"> 
img.hoverborder { 
    /*Propriété propre à Internet Explorer 6.0 */ 
    border-color: pink; 
    filter: chroma(color=pink); 
} 
</style> 
<![endif]--> 

另外,您可以在條件文件中包含另一個CSS樣式表,如下所示:

<!-- your normal StyleSheet --> 
<link type="text/css" rel="stylesheet" href="css/StyleSheet.css"/> 
<!-- overrides for IE 6 --> 
<!--[if lte IE 6]> 
<link type="text/css" rel="stylesheet" href="css/StyleSheet-IE6.css"/> 
<![endif]--> 

<!--[if lte IE 6]> .... <![endif]-->中的代碼僅在if語句爲true時使用。在這種情況下,當瀏覽器爲lte IE 6(低於/等於Internet Explorer 6)時,對於IE6而言,因此在FF4中不起作用,並且不會使邊框變爲粉紅色。在IE7以上或其他任何瀏覽器中都不會變成粉紅色。

0
border-color: rgba(255,0,255,0.5) 

最後一個參數是「不透明度」。

0

Firefox是給你一個粉紅色的邊框,因爲你告訴它要與此:

border-color: pink; 

通常的方式來增加IE特有的風格是使用conditional comment和一個單獨的樣式表,只爲IE瀏覽器。首先從主CSS刪除border-color

img.hoverborder { 
    border: solid 4px transparent; 
    filter: chroma(color=pink); 
} 

然後用這種添加ie6.css樣式表:

img.hoverborder { 
    /*Propriété propre à Internet Explorer 6.0 */ 
    border-color: pink; 
} 

最後,拉在IE6的樣式表與您的HTML是這樣的:

<!--[if IE 6]><style type="text/css">@import "ie6.css";</style><![endif]-->