1

何らかの理由でフィルター: 不透明度が IE8 で機能しません。しばらく使用していませんが、常に機能しており、何が問題なのかわかりません。また、firebug にはフィルタ ルールがまったく表示されず、通常の不透明度のみが表示されます。

何か案は?

ul.products-grid img:hover {

    opacity: .8;
    filter:alpha(opacity=80);
}
4

5 に答える 5

1

これを試して:

ul.products-grid img:hover {
    opacity: .8; /* Standards Compliant Browsers */
    filter:alpha(opacity=80); /* IE 7 and Earlier */
    /* Next 2 lines IE8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
}

ページを作成validateする場合は、次のようなif IEステートメントを使用して、標準スタイルシートをIEスタイルシートから分離します。

<!--[if IE]>
<link rel="stylesheet" type="text/css"  href="stylesheetname.css" />
<![endif]-->
于 2013-02-06T15:57:36.933 に答える
1

タグは

filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80);

これを試してください

于 2013-02-06T15:56:42.283 に答える
1

IE8 では、以下も必要になる場合があります。

-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";

Cross Browser Opacityを見てみることもできます

于 2013-02-06T15:57:02.850 に答える
0

CSSは正常に機能します。ここでデモをチェックしてください、http://jsfiddle.net/e26Pz/2/

たぶん問題はDOCタイプにあるかもしれません。私が使用した例では<!DOCTYPE html>

どのDocタイプを使用していますか?

完全なデモコード

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title> - jsFiddle demo</title>
  <style type='text/css'>
    img:hover {    
       opacity: 0.4;
       filter:alpha(opacity=40);
    }
  </style>

</head>
<body>
     <img src="https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-prn1/69651_408104205949356_2097957740_n.jpg" />      
</body>   
</html>
于 2013-02-06T16:00:38.130 に答える
0

また、ページが IE の互換モードでレンダリングされているかどうかも確認してください。IE8 は、標準準拠モードでない限り、任意の要素で :hover 疑似クラスをサポートしない可能性があると思います。

同様の状況と説明here .

于 2013-02-06T15:53:45.353 に答える