1

たくさんの反対票を獲得する前に、なぜそれが機能しないのか理解していると思うことを指摘したかったのですが、コミュニティの誰かが以前にこのジレンマに遭遇したことがあるかどうか、そして彼らが何ができたのかを確認したいと思いました問題を克服するために。

だから、私はクリック可能な画像マップを持っています。<body>重要ではない理由で、タグの2番目の子として存在するdiv(Bと呼びましょう)に配置されています。次に、このdiv兄弟(Aと呼びます)は、ページラッパー全体と残りのサイトコンテンツを保持します。つまり、Bはほとんど背景画像として機能しており、Aはサイト全体を保持しています。Aには透明なdivがあり、Bが通過(表示)できるようにギャップを埋めます。残念ながら、私のクライアントは、Aをイメージマップにしたいが、マークアップは同じままにしておきたいと判断しました。イメージマップは想定どおりに機能し、IEではクリック可能ですが、より優れたブラウザー(Chrome、FF)では、理論的にはAがBとオーバーラップし、イメージマップが使用できなくなるため、イメージマップはクリックできません。

私の質問は、IEが正しく機能し、FFとChromeが失敗するのはなぜですか?そして、BがAの後ろにあるが、Bがクリック可能である必要があることをFFに理解させるために、どのような方法を使用できますか?これも可能ですか?CSS Z-Index?なんでも...?

状況を説明するためのマークアップ:

<div id="wrap" class="A">Site Content</div>
<div id="bg" class="B"><img src="" /><map></map></div>
4

1 に答える 1

1

IE だけがイベントを透過要素に「通す」ことができます。シマノン述べたように、それは正しく動作しているという意味ではありません

Internet Explorer 8 イベントが透過的な親を通過する

A の透過領域から B にクリック イベントを渡すことはできますが、これには大量の JavaScript が必要です。問題に対する CSS ソリューションはありません。

于 2012-10-16T12:31:31.977 に答える