2011-07-22 9 views
0

<li>要素の背景で透明度を取得しようとしています。 IE8では不透明度が問題になっています。背景の代わりに の場合は、<li>全体が透明になります。IE8不透明エラー

#weeklyPrizeBlocksWrapper li { 
    font:bold 11px Arial; 
    color: #535353; 
    height: 67px; 
    background-color: #e4c39b; 
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; // first! 
    filter:alpha(opacity=50); 
    opacity:0.5; 
    -moz-opacity:0.5; 
    overflow: hidden; 
    padding: 6px; 
    float: left; 
    dislpay: block; 
    margin: 0 2px 2px 0; 
    cursor: pointer; 
} 
+0

これはすべてのブラウザの場合になります。あなただけの背景を透明にしたい場合は、css3の不透明度を調べてください。 – Ibu

+0

IE7/8ではcss3が動作しません。他の解決策? – amit

+1

はい、もう1つの解決策は、透過イメージを背景として使用することです。私の答えで詳細を参照してください – Ibu

答えて

0

不透明度がリスト項目のすべての要素に適用されます。

あなたが背景に不透明度を適用する場合、それはCSS3で提供されています:

background-color: rgba(255,255,255,.5); 

aは、すべてのブラウザの広いサポートについては、アルファ

ためのもので、それを行うには共通です透明なPNG画像を使用する。 Photoshopやイメージエディタソフトウェアを使用して不透明度を必要なレベルに下げることができます。

+0

IE7/8はCSS3をサポートしません。他の選択肢? – amit

+0

@amit、もう1つの解決方法は、透明なgifまたはpngを使用することです。 – Ibu

0

IEの透明な背景のGoogle。 IEにはそのためのフィルタがあります。不透明度と相対フィルタは、すべてのブラウザで常に要素全体に適用されます。