0

次の IE フィルターに問題があります。

progid:DXImageTransform.Microsoft.Matrix()

progid:DXImageTransform.Microsoft.AlphaImageLoader()

同じ要素で両方を同時に機能させることはできません。

それらのいずれかを個別に適用すると機能しますが、これらの効果を連鎖させることはできませんか?

誰もこのバグを見たことがありますか?

正しい構文は何でしょうか?

SO および MS リファレンス サイトで推奨されているいくつかの組み合わせを試しましたが、問題が解決したものはありません。

4

1 に答える 1

2

上記で指定した順序で効果を発生させたい場合 ( Matrixthen AlphaImageLoader)、それは不可能です。

これAlphaImageLoaderプロシージャル サーフェスであり、Matrix などの静的フィルターの説明では次のように記述されています (強調は私が追加しました)。

複数のフィルターがオブジェクトに適用される場合、各フィルターはソース順に処理されます。ただし、プロシージャル サーフェスは例外で、最初に計算されます。フィルターの効果を強調するには、フィルターをソースの順序で最後に配置するか、オブジェクトの親に配置します。トランジションは常にソース順の最後に配置してください。

そのため、AlphaImageLoader最後に定義されていても、常に最初に処理されます。順序が問題にならない場合 (問題があると思いますが)、単にこれでうまくいくはずです:

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader() progid:DXImageTransform.Microsoft.Matrix();

filter呼び出し間のスペース (空白) に注意してください。以前のfilter. したがって、2番目が最初のものを上書きするため、これは機能しません:

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader();
filter: progid:DXImageTransform.Microsoft.Matrix();
于 2013-05-02T18:52:43.827 に答える