質問

モーダルウィンドウの実装でサードパーティの広告がにじんでいる場合があります。広告がその上に表示されないように、モーダルオーバーレイのz-indexをできるだけ高くしたいと思います。 Z-Index値に制限はありますか?存在するかどうかは、ブラウザによって異なると思います。誰でも知っていますか?

役に立ちましたか?

解決

z-index はグローバルには機能せず、「スタッキングコンテキスト」内でのみ機能することに注意してください( definition in CSS)、広告が独自のスタッキングコンテキストを確立する場合、 z-index 他の場所で設定した値は、まったく影響しない場合があります。

ただし、「ウィンドウ」の問題である可能性が高いFlash( wmode = transparent 属性を持たないオブジェクト)。ブラウザがすべてのものの上に表示されます。まるでウィンドウがブラウザのウィンドウのように見えます。そのような場合、 z-index はまったく役に立ちません。 ad [-provider]で wmode = transparent を使用するか、iframeでクレイジーなハックを使用する必要があります。

他のヒント

ほとんどのブラウザでサポートされている最大zIndex値は2147483647(2 ^ 31-1)ですが、Opera 9.2は2147483583より大きい値を受け入れません。バージョン9.5で修正されました。

実際はそうではありませんが、int範囲など、システムの自然な制限を考慮することができます。 おそらく32,767未満に保つ。同様の問題に取り組んでいる間、私は間違いなくjavascriptでそれを超えており、当時懸念していた主要なブラウザやプラットフォームでは問題に遭遇しませんでした。

サードパーティの広告とオーバーレイの場合、フラッシュ埋め込みの wmode =" transparent" が同じ行に沿った一般的な問題であることを確認してください。 IEにはz-indexのスタックに関するバグがあるため、成功しない場合は、それで壁に頭をぶつけないように注意してください*。

私は常に、ある種の慣習を守り、任意の数字を使用したくない。たとえば、 cssのすべてが0〜10の間にある可能性があります。おそらく、dhtmlのようなものは100の位の値で発生し、特定のモジュールに意味のあるz-indexがあります。

*補足: IEのバグは、具体的には、IEがドキュメントフローの新しいインスタンスをz-indexの新しいスタックコンテキストと見なすことです。通常z-indexを継承する子ノードが独自のポジショニングコンテキストでレンダリングされるときに、DOM階層でz-indexが失われないようにする必要があります。

http://からの引用techtrouts.com/is-there-a-limit-to-the-css-z-index-property/

理論的には、z-indexプロパティは、OSおよびブラウザに応じて、無制限、または少なくともint型の範囲内である必要があります。 ただし、ブラウザのバグを回避するには、z-indexの値を+/- 32767に制限する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top