6

Firefox、Chrome、IE8では正常に動作するAjaxControlToolkitのModalPopupExtenderを持っていますが、IE8互換モードで実行すると、私のページの内容ではなく、上に。
ポップアップは、Masterpageによってレンダリングされるユーザーコントロールにあります。マスターページのコンテンツ(ヘッダーとサイドバー)がグレー表示されているが、コンテンツのプレースホルダーがポップアップの前に表示されているため、マスターページのコンテンツの前にポップアップが表示されていると思います。私はにマスターページにあなたのDOCTYPE宣言を変更する提案ソリューションオンラインが見つかりました:ModalPopupExtenderはIE7/IE8互換モードのすべてでレンダリングされません

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

をしかし、私はすでに正確な宣言とまだ位置決め問題を持っていることを持っていました。ここでは、ポップアップ・コードは次のとおりです。

<cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" 
    TargetControlID="lnkbtnDealerID" 
    PopupControlID="pnlPopup" 
    BackgroundCssClass="modalBackground" 
    DropShadow="true" 
    OkControlID="OkButton" 
    CancelControlID="CancelButton" 
    OnOkScript="" 
    > 
</cc1:ModalPopupExtender> 

    <asp:Panel ID="pnlPopup" runat="server" CssClass="modalPopup" Style="display: none"  Width="233px"> 
    <p>Are you sure? Your current shopping cart is valid only for the current Dealer ID.  Switching Dealer IDs will reset your cart according to the new Dealer ID chosen.</p> 

    <br /> 
    <div align="center"> 
     <asp:Button ID="OkButton" runat="server" Text="Ok" /> 
     <asp:Button ID="CancelButton" runat="server" Text="Cancel" /> 
    </div> 
    </asp:Panel> 

し、関連するCSS:

.popupControl { 
    background-color: white; 
    position:absolute; 
visibility:hidden; 
border-style:solid; 
border-color: Black; 
border-width: 2px; 
} 

.modalBackground { 
background-color:Gray; 
filter:alpha(opacity=70); 
opacity:0.7; 
} 

.modalPopup { 
background-color:white; 
border-width:1px; 
border-style:solid; 
border-color:Gray; 
padding:3px; 
width:250px; 
} 
+0

ポップアップが定義されているすべての親コンテナの上にポップアップ表示されないIE8で問題が発生しました.Zインデックスが何であっても、いくつかの要素が常に上に表示されます(IE6のようなドロップダウン)。私の場合は、ポップアップがポップアップしたときに隠すだけの手のひらです。私の意見は分かりませんが、私が共有したいと思っていただけです – JoshBerke

+0

それは私のものと似ていますが、ポップアップをすると私のメインページのコンテンツを隠すのは奇妙に見えます。 – fr0man

答えて

0

これは、あなたが使用できる解決策になるかもしれません:

Problem in Z-index of menu and ajax ModalPopupExtender in ASP.net

私はこの問題に実行されていますあまりにも...私たちが実際にIE6/7をサポートするつもりはないプレリリース製品で。しかし、私はそれを試しました。モーダルポップアップでコントロールを保持するdivのすべてが(10001のような)本当に高いz-indexを持っていることを確認してください。

+0

これは有望でしたが、うまくいきませんでした。私はできる限りすべてZ-Indexを配置していますが、プレースホルダーのコンテンツの前にはまだポップしていません。 – fr0man

1

同じ問題を解決しようとしている間にあなたの投稿が見つかりました。私にとっては、mainBodyと呼ばれるdivタグまで追跡しました。このタグは、すべてのページコンテンツが含まれています。このdivを制御するCSSクラスは相対的な位置付けをしますが、Z-インデックスはありません。 mainBodyのz-indexを-1に設定すると、私のmodalPopupはIE7で完全に機能しました。

希望がこれを助けますか?

1

あなたがいる親divのIEでのみZインデックスを設定することができます。 div上位は常に下位divの上に表示されます。 私はこの問題を、常にModualwindow Divをタグの直後に置くことで解決しました。 最初のdivの場合は常に上に表示されます。

ヘンリク

0

あなたがASP.NETプロジェクトでModalPopupExtender(AjaxToolkit 4.1.50927.0および.NET 4.0.30319)を使用する場合は、IE7とIE8と同じ問題に直面する可能性があります。ポップアップウィンドウはIE 9では完全にレンダリングされますが、IE 7ではレンダリングされません& IE8。その場合は、ModalPopupExtenderのためにAnimationExtender(フェードイン)を削除してみてください。ブラウザのバージョンを確認し、JSを介してアニメーションのコードをレンダリングして、フェードインの効果を処理できる新しいブラウザを探したり、ブラウザがIE7の場合はアニメーションを使用したりしないでください。

1

Z-indexは、ローカルネットワーク上のIE7のdocモードにデフォルト設定されているIE 10互換ビューでこれを実行している人にとって実際に問題であると付け加えたいと思います。

私はz-index: -1をHTMLと本文に使用しましたが、他のコンテナについてはz-index: 100に行っていました。ポップアップクラスはz-index: 999999です。あなたのサイトを調整する必要があります。

関連する問題