0

body タグの子であるオーバーレイ div があります。div の背景は透明な白である必要があり、png で偽造しないことをお勧めします。私は次のサスを持っています:

.my-overlay
    @include opacity(0.6)
    background: #fff
    position: absolute
    top: 0
    left: 0

これは次のようにコンパイルされます。

.my-overlay
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
    opacity: 0.6;
    background: white;
    position: absolute;
    left: 0;
    top: 0;

私も以下を持っています

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

透過性は、Chrome、Safari、および FF では機能しますが、IE8 では機能しません。IE8 では、div の背景が不透明な白にレンダリングされます (OS X 上の XP/IE8/VMWare でテストしています)。互換モードでも動作しません。

また、フィルターを手動で -ms-filter に変更しようとしましたが、効果はありませんでした。

IE8 開発者ツールバーは、フィルター プロパティが正しい値で div に適用され、hasLayout が -1 であることを示しています。IE8 で透明性を妨げているのは何を見落としているのでしょうか?

4

1 に答える 1

0

これは、IE7/IE8でも機能します。

.transparent {
    zoom: 1;
    filter: alpha(opacity=50);
    opacity: 0.5;
}
于 2012-04-11T16:10:51.250 に答える