2

私はしばらく前に反対の問題について尋ねたと思います(マウスイベントが画像の透明な領域を通過できるようにします-私はそのために画像マップを使用することになりました)が、とにかく:

ダイアログが表示されたときのマスク要素が必要です。過去に私が使用したもの:

position:fixed;
left:0;top:0;right:0;bottom:0;
background:#000000;
opacity:0;
filter:alpha(opacity=0);

そしてそれは機能しますが、それは一種の「ハック」です。

background:transparentマウスイベントをインターセプトするための要素を取得できませんでした。これは意図的なものですか?上記以外にこれを回避する方法はありますか?または、上記はこの問題の最善の解決策ですか?

4

1 に答える 1

0

の問題はbackground:transparentIEに固有のようです(IE7 / 8/9でテスト済み)。他のブラウザでは問題になりません。

また、HTMLフォーム要素に固有です。たとえば、IEでは段落タグ内のテキストに対しては正常に機能しますが、ボタンタグに対しては機能しません。おそらく、Microsoftによる意図的なエンジニアリングの決定の結果ではなく、IEのレンダリングのバグです。IE6でも同様の問題があり、選択ボックスが。で正しくレイヤー化されていませんでしたposition:absolute

opacityこの場合よりも安全に使用できますbackground:transparentopacityマスクを完全に透明ではなく部分的に透明にするように変更すると、ハックのように感じられなくなる場合があります。

于 2012-12-10T00:12:34.130 に答える